EasyUI的form表單里面的驗證框,先講解下validatebox類和相關的屬性。
驗證規則
驗證規則是通過使用 required 和 validType 特性來定義的, 這里是已經實施的規則:
email:匹配 email 正則表達式規則,系統提供的屬性。
url:匹配 URL 正則表達式規則
length[0,100]:允許從 x 到 y 個字符
remote['http://.../action.do','paramName']:發送 ajax 請求來驗證值,成功時返回 'true' 。
要自定義驗證規則,重寫 $.fn.validatebox.defaults.rules ,來定義一個驗證函數和無效的信息。例如,定義一個 minLength 驗證類型:
$.extend($.fn.validatebox.defaults.rules, { minLength: { validator: function(value, param){ return value.length >= param[0]; }, message: 'Please enter at least {0} characters.' } });
調用 validate 方法并且返回驗證結果,true 或者 false。
<div id="userReg" class="easyui-panel" style="width:400px; height:300px;" title="注冊用戶"> <form action="" method="post"> <table> <tr> <td>用戶名:</td> <td><input type="text" name="username" class="easyui-validatebox" required=true validType="midLength[4,10]" value=""/></td> </tr> <tr> <td>密碼:</td> <td><input type="text" name="password" class="easyui-validatebox" required=true validType="pwdLength[8]" value=""/></td> </tr> <tr> <td>性別:</td> <td> <input type="radio" name="sex" checked="checked" value="male"/>男 <input type="radio" name="sex" value="female"/>女 </td> </tr> <tr> <td>年齡:</td> <td><input type="text" name="age" value=""/></td> </tr> <tr> <td>出生日期:</td> <td><input type="text" name="birth" value=""/></td> </tr> <tr> <td>所屬城市:</td> <td><input type="text" name="city" value=""/></td> </tr> <tr> <td>薪水:</td> <td><input type="text" name="salary" value=""/></td> </tr> <tr> <td colspan="2"> <a class="easyui-linkbutton">保存</a> </td> </tr> </table> </form> </div> <script type="text/javascript"> $(function(){ $.extend($.fn.validatebox.defaults.rules,{ midLength:{ validator:function(value, param){ return value.length >= param[0] && value.length<=param[1]; }, message: '用戶名必須在4到10位之間!' }, pwdLength:{ validator:function(value,param){ return value.length==param[0]; }, message:'密碼必須是8位' } }); }); </script>
參考圖片如下:
新聞熱點
疑難解答