EasyUI表单验证

举报
tea_year 发表于 2021/12/29 22:39:25 2021/12/29
【摘要】 视频课:https://edu.csdn.net/course/play/7621 EasyUI的form表单里面的验证框,先讲解下validatebox类和相关的属性。 验证规则 验证规则是通过使用 required 和 validType 特性来定义的, 这里是已经实施的规则: email:匹配 email 正则表达式规则,系统提...

视频课:https://edu.csdn.net/course/play/7621

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 验证类型:

1. $.extend($.fn.validatebox.defaults.rules, {   

2.      minLength: {   

3.          validator: function(value, param){   

4.              return value.length >= param[0];   

5.          },   

6.          message: 'Please enter at least {0} characters.'  

7.      }   

8.  });


特性

名称

类型

说明

默认值

required

boolean

定义是否字段应被输入。

false

validType

string

定义字段的验证类型,比如 email、url,等等。

null

missingMessage

string

当文本框是空时出现的提示文字。

This field is required.

invalidMessage

string

当文本框的内容无效时出现的提示文字。

null

方法

名称

参数

说明

destroy

none

移除并且销毁这个组件。

validate

none

进行验证以判定文本框的内容是否有效。

isValid

none

调用 validate 方法并且返回验证结果,true 或者 false。




  
  1. <div id="userReg" class="easyui-panel" style="width:400px; height:300px;" title="注册用户">  
  2.             <form action="" method="post">  
  3.                 <table>  
  4.                     <tr>  
  5.                         <td>用户名:</td>  
  6.                         <td><input type="text" name="username" class="easyui-validatebox" required=true  
  7.                          validType="midLength[4,10]" value=""/></td>  
  8.                     </tr>  
  9.                     <tr>  
  10.                         <td>密码:</td>  
  11.                         <td><input type="text" name="password" class="easyui-validatebox" required=true validType="pwdLength[8]" value=""/></td>  
  12.                     </tr>  
  13.                     <tr>  
  14.                         <td>性别:</td>  
  15.                         <td>  
  16.                             <input type="radio" name="sex" checked="checked" value="male"/>男  
  17.                             <input type="radio" name="sex" value="female"/>女  
  18.                         </td>  
  19.                     </tr>  
  20.                      <tr>    
  21.                         <td>年龄:</td>    
  22.                         <td><input type="text" name="age" id="age" class="easyui-numberbox" value=""/></td>    
  23.                     </tr>    
  24.                     <tr>    
  25.                         <td>出生日期:</td>    
  26.                         <td><input type="text" style="width:160px"name="birth" id="birthday" class="easyui-datebox" value=""/></td>    
  27.                     </tr>    
  28.                         <tr>    
  29.                         <td>所属城市:</td>    
  30.                         <td><input type="text" name="city" class="easyui-combobox" valueField="id"
  31.                         <span style="white-space:pre"> </span>url="combo_data.json" textField="name" value=""/></td>    
  32.                     </tr>    
  33.                         <tr>    
  34.                         <td>开始时间:</td>    
  35.                         <td><input type="text" id="startTime" name="startTime" class="easyui-datetimebox" value=""/></td>    
  36.                     </tr>
  37.                     </tr>    
  38.                         <tr>    
  39.                         <td>结束时间:</td>    
  40.                         <td><input type="text" id="endTime" name="endTime" class="easyui-datetimebox" value=""/></td>    
  41.                     </tr>    
  42.                     <tr>    
  43.                         <td colspan="2">    
  44.                             <a class="easyui-linkbutton">保存</a>    
  45.                         </td>    
  46.                     </tr>    
  47.                 </table>  
  48.             </form>  
  49.         </div> 


  
  1. <script type="text/javascript">
  2. $(function(){
  3. $.extend($.fn.validatebox.defaults.rules,{
  4. midLength:{
  5. validator:function(value, param){
  6. return value.length >= param[0] && value.length<=param[1];
  7. },
  8. message: '用户名必须在4到10位之间!'
  9. },
  10. pwdLength:{
  11. validator:function(value,param){
  12. return value.length==param[0];
  13. },
  14. message:'密码必须是8位'
  15. }
  16. });  

  
  1. //数值验证控件;
  2.             $('#age').numberbox({
  3.             <span style="white-space:pre"> </span>min:0, //输入负数,变成0
  4.             <span style="white-space:pre"> </span>max:150,//输入大于150,变成150
  5.             <span style="white-space:pre"> </span>required:true,
  6.             <span style="white-space:pre"> </span>missingMessage:'年龄必填',
  7.             <span style="white-space:pre"> </span>precision:0
  8.             }); 
  9.   <span style="white-space:pre"> </span>//日期验证控件;
  10.             $('#birthday').datebox({
  11.             <span style="white-space:pre"> </span>required:true,
  12.             <span style="white-space:pre"> </span>missingMessage:'日期必填!',
  13.             <span style="white-space:pre"> </span>editable:false
  14.             });
  15.             //验证开始时间和结束时间;
  16.             $('#startTime,#endTime').datetimebox({
  17.             <span style="white-space:pre"> </span>required:true,
  18.             <span style="white-space:pre"> </span>missingMessage:'时间必填',
  19.             <span style="white-space:pre"> </span>editable:false
  20.             });
  21. });
  22. </script>


参考图片如下:



Number数字框

特性

其特性扩展自 validatebox,下列是为 numberbox 增加的特性。

名称

类型

说明

默认值

disabled

boolean

定义是否禁用该域。

false

min

number

允许的最小值。

null

max

number

允许的最大值。

null

precision

number

显示在小数点后面的最大精度。

0

方法

其方法扩展自 validatebox,下列是为 numberbox 追加或重写的方法。

名称

参数

说明

disable

none

禁用该域。

enable

none

启用该域。

fix

none

把值固定为有效的值。

日期框

依赖

  • combo
  • calendar

特性

其特性扩展自 combo,下列是为 datebox 增加的特性。

名称

类型

说明

默认值

panelWidth

number

下拉日历面板的宽度。

180

panelHeight

number

下拉日历面板的高度。

auto

currentText

string

当前日期按钮上显示的文字。

Today

closeText

string

关闭按钮上显示的文字。

Close

okText

string

确定按钮上显示的文字。

Ok

disabled

boolean

为 true 时禁用该域。

false

formatter

function

格式化日期的函数,此函数有一个 'date' 参数,并返回一个字符串值。

parser

function

解析日期字符串的函数,此函数有一个 'date' 字符串参数,并返回一个日期值。

事件

名称

参数

说明

onSelect

date

当用户选择一个日期时触发。

方法

其方法扩展自 combo,下列是为 datebox 重写的方法。

名称

参数

说明

options

none

返回 options 对象。

calendar

none

获取 calendar 对象。

setValue

value

设置 datebox 的值。

ateTimeBox  日期时间框

依赖

  • datebox
  • timespinner

特性

其特性扩展自 datebox,下列是为 datetimebox 增加的特性。

名称

类型

说明

默认值

showSeconds

boolean

定义是否显示秒的信息。

true

方法

其方法扩展自 datebox,下列是为 datetimebox 重写的方法。

名称

参数

说明

options

none

返回 options 对象。

spinner

none

返回 timespinner 对象。

setValue

value

设置 datetimebox 的值。





文章来源: aaaedu.blog.csdn.net,作者:tea_year,版权归原作者所有,如需转载,请联系作者。

原文链接:aaaedu.blog.csdn.net/article/details/51943997

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。