为easyui添加多条件验证
生活随笔
收集整理的這篇文章主要介紹了
为easyui添加多条件验证
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
easyui的驗證框架,validatebox不能有效的支持多個條件的驗證,比如中文用戶名,既要驗證其是中文,又要驗證其長度不超過6位時便顯得很繁瑣,需要反復的為easyui添加驗證規則。
在此實現一個多個條件驗證的驗證規則,使驗證規則通過參數傳入自定義的驗證規則中。
? ? ? ? ? ? ? ? ? ? ??
$.extend( $.fn.validatebox.defaults.rules,{length : {//驗證長度validator : function(value, param) {var len = $.trim(value).length;$.fn.validatebox.defaults.rules.length.message = "輸入內容長度必須介于"+param[0]+"和"+param[1]+"之間.";return len >= param[0] && len <= param[1];},message :""},chinese : {// 驗證中文validator : function(value) {return /^[\Α-\¥]+$/i.test(value);},message : '請輸入中文'}});? ? ? ? 2.添加一個驗證多條件的規則
group : {// param的值為[]中值,多條件的驗證規則validator : function(value, param) {var flag = false;var message = "驗證不通過";for(var i=0;i<param.length;i++){var validatorone = param[i];var validatename =validatorone;var validateParam =null;//取名稱和參數if(validatorone.indexOf('[')>0){var start = validatorone.indexOf('[')+1;var end =validatorone.indexOf(']');validateParam =validatorone.substring(start,end).split(',');validatename = validatorone.substring(0,validatorone.indexOf('['));}flag = $.fn.validatebox.defaults.rules[validatename].validator(value,validateParam);message = $.fn.validatebox.defaults.rules[validatename].message;//驗證/*flag = eval("$.fn.validatebox.defaults.rules[validatename].validator(value,validateParam)");message=eval("$.fn.validatebox.defaults.rules[validatename].message");*/$.fn.validatebox.defaults.rules.group.message = message;if(!flag){return flag;}}return true;},message : '驗證未通過'}3.調用
<input name="name" class="easyui-validatebox" required="required" validtype="group['chinese','length[2,25]']" />?? 由于多條件驗證的參數是通過字符串傳遞的,所以如果子驗證中還需要使用引號時需要轉義。
? ? ? ? ??
轉載于:https://www.cnblogs.com/lic309/p/4061877.html
總結
以上是生活随笔為你收集整理的为easyui添加多条件验证的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: SUBSTR函数的使用
- 下一篇: CAD/CAM/CNC行业常用功能解决方