Jquery 標籤智慧型驗證

2022-03-06 00:58:10 字數 4864 閱讀 1556

一直在尋找最快捷方便的資訊驗證方法,之前自己編過js版驗證但要寫很多輔助**,經過許多次改進,還是覺得太麻煩**還多,維護起太費盡。後經過一段對jquery的學習,jquery的強大解決了輔助**過多不易維護的問題。

autovalidate.js

///

//驗證方法 v1.0,建立於2010-12-9   完成2010-12-16 mr.x 制 

//修改2010-12-10、2010-12-12、2010-12-15、2010-12-16添入資訊提示動畫效果

//支援 type=text      type=checkbox       type=radio          select      標籤驗證

//vld="***"必填 格式驗證   

//vld="n***"選填 格式驗證    

//err="***"錯誤顯示內容

//super="y"用追加提示資訊,要用y以外字母得修改同級一組驗證,同級一組的標籤可以在第乙個標籤進行super="y"屬性標識,其它不用

//len="***"長度限制,用於textarea標籤

//$(function () ;

//錯誤資訊匿名物件

var strerror = {};

//正確資訊匿名物件

var strright = {};

/**   引數配置 start  **/

//非空

strregex.nonull = /[^\s]+/;

strerror.nonull = "請填寫內容,如123、中國!";

//郵箱

strregex.email = /^([a-za-z0-9_-])+@([a-za-z0-9_-])+((\.[a-za-z0-9_-]))$/;

strerror.email = "請核對郵箱格式,如[email protected]!";

strerror.url = "請核對**格式,如";

//賬號

strregex.an = /^([a-za-z0-9]|[_])$/;

strerror.an = "請核對賬號格式,如china_56!";

//數字

strregex.math = /\d+$/;

strerror.math = "請核對數字格式,如1234!";

//年齡

strregex.age = /^\d$/;

strerror.age = "請核對年齡格式,10~99歲之間!";

//郵編

strregex.post = /^[1-9]\d$/;

strerror.post = "請核對郵編格式,如150001!";

//**

strregex.phone = /^((\d)|((\d)|(\d|\d)-(\d)|(\d|\d)-(\d)-(\d|\d|\d|\d)|(\d)-(\d|\d|\d|\d)))$/;

strerror.phone = "請核對**格式,如15546503251!";

//身份證

strregex.card = /^(([1-9]\d[1-9]\d((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])((\d)|\d[x,x]))|([1-9]\d[1-9]\d((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])(\d)))$/;

strerror.card = "請核對身份證格式,如230103190001010000!";

//金錢

strregex.price = /^([1-9]\d*|0)(\.\d+)?$/;

strerror.price = "請核對金錢格式,如99.98!";

//日期

strregex.date = /((^((1[8-9]\d)|([2-9]\d))([-\/\._])(10|12|0?[13578])([-\/\._])(3[01]|[12][0-9]|0?[1-9])$)|(^((1[8-9]\d)|([2-9]\d))([-\/\._])(11|0?[469])([-\/\._])(30|[12][0-9]|0?[1-9])$)|(^((1[8-9]\d)|([2-9]\d))([-\/\._])(0?2)([-\/\._])(2[0-8]|1[0-9]|0?[1-9])$)|(^([2468][048]00)([-\/\._])(0?2)([-\/\._])(29)$)|(^([3579][26]00)([-\/\._])(0?2)([-\/\._])(29)$)|(^([1][89][0][48])([-\/\._])(0?2)([-\/\._])(29)$)|(^([2-9][0-9][0][48])([-\/\._])(0?2)([-\/\._])(29)$)|(^([1][89][2468][048])([-\/\._])(0?2)([-\/\._])(29)$)|(^([2-9][0-9][2468][048])([-\/\._])(0?2)([-\/\._])(29)$)|(^([1][89][13579][26])([-\/\._])(0?2)([-\/\._])(29)$)|(^([2-9][0-9][13579][26])([-\/\._])(0?2)([-\/\._])(29)$))/;

strerror.date = "請核對日期格式,如1999.9.9、1999-9-9、1999.09.09!";

//時間

strregex.time = /^([0-9]|[0-1][0-9]|[2][0-3])(:|:)([0-5][0-9])$/;

strerror.time = "請核對時間格式,如23:59!";

strerror.length = "請核對輸入首席資訊官度,長度小於";

strright.info = "格式正確!"; //可以設定為空

//下拉框

strregex.ddl = "請選擇";

strerror.ddl = "請選擇選項";

//單個checkbox核取方塊

strregex.check = "請選擇";

strerror.check = "請選擇選項";

//單個radio核取方塊

strregex.radio = "請選擇";

strerror.radio = "請選擇選項";

//同級一組checkbox核取方塊

strregex.checkgroup = "請選擇";

strerror.checkgroup = "請選擇選項";

//同級一組radio核取方塊

strregex.radiogroup = "請選擇";

strerror.radiogroup = "請選擇選項";

//在標籤後面追加資訊

var spanerror = "

";var spanok = "

";/**   引數配置 end  **/

/**  main   **/

//檔案目錄,回返最頂級目錄 ../

function filepath() );

return file;

}//頁驗證自檢

$("#form1 [vld]").blur(function () );

//驗證處理集合

function regexgether($ctrl)

}//標籤內容空驗證

function regexnull($ctrl)

else

}//驗證多個同級一組input(type=radio)標籤 或 input(type=checkbox)標籤

function regexinputcheckboxradioall($ctrl, error) );

}else );

}return false;

}else );

}else );

}return true;}}

//驗證單個input(type=radio)標籤 或 input(type=checkbox)標籤

function regexinputcheckboxradioonly($ctrl, error)

else

}//select標籤,選項驗證

function regexselect($ctrl)

else

}//標籤允許為空內容格式驗證,type=text標籤驗證

function regexinputtextonly($ctrl, regex, error)

else

}//標籤不允許為空內容格式驗證,type=text標籤驗證

function regexinputtextall($ctrl, regex, error)

else

}//標籤內容格式驗證

function regexotherformat($ctrl, regex, error)

else

}//textarea標籤長度驗證

function regexlen($ctrl)

}ok($ctrl);

return true;

}//格式驗證錯誤顯示

function error($ctrl, error)

else

if ($.trim($ctrl.val()).length > 0)

//提交自檢

$("#vldbtn").click(function () );

//檢查標籤中樣式是否有error

if ($("#form1 [vld][class='error']").length > 0)

else

});});

autovalidate.htm

個人拙見,希望大家多提意見!

jQuery標籤選擇

符號 也可以直接寫成jquery id id class class tag div attr 具備屬性 name 多屬性 name age 屬性篩選 name godme 屬性過濾 name godme 不等 name godme 開頭 name godme 結尾 組合查詢 div,class,n...

jQuery標籤操作

標籤找到就可以進行對應的操作了 addclass cls 新增類 removeclass cls 移除類 attr attr value 有value表示設定,沒有則獲取 removeattr attr 移除指定屬性 hasclass cls 判斷是否包含類 toggleclass cls 有則移除...

JQuery查詢標籤

1id選擇器 id 名稱 cent 2標籤選擇器 tabname 便簽名稱 a 3class選擇器 class class選擇器名稱 b 4配合使用 標籤名稱.選擇器 找到有c1 class類的div標籤 div.c 5所有元素選擇器 6組合選擇器 id選擇器,class選擇器,標籤選擇器 1 x的...