EasyUI表单验证
视频课: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。 |
-
<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" id="age" class="easyui-numberbox" value=""/></td>
-
</tr>
-
<tr>
-
<td>出生日期:</td>
-
<td><input type="text" style="width:160px"name="birth" id="birthday" class="easyui-datebox" value=""/></td>
-
</tr>
-
<tr>
-
<td>所属城市:</td>
-
<td><input type="text" name="city" class="easyui-combobox" valueField="id"
-
<span style="white-space:pre"> </span>url="combo_data.json" textField="name" value=""/></td>
-
</tr>
-
<tr>
-
<td>开始时间:</td>
-
<td><input type="text" id="startTime" name="startTime" class="easyui-datetimebox" value=""/></td>
-
</tr>
-
</tr>
-
<tr>
-
<td>结束时间:</td>
-
<td><input type="text" id="endTime" name="endTime" class="easyui-datetimebox" 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位'
-
}
-
});
-
//数值验证控件;
-
$('#age').numberbox({
-
<span style="white-space:pre"> </span>min:0, //输入负数,变成0
-
<span style="white-space:pre"> </span>max:150,//输入大于150,变成150
-
<span style="white-space:pre"> </span>required:true,
-
<span style="white-space:pre"> </span>missingMessage:'年龄必填',
-
<span style="white-space:pre"> </span>precision:0
-
});
-
<span style="white-space:pre"> </span>//日期验证控件;
-
$('#birthday').datebox({
-
<span style="white-space:pre"> </span>required:true,
-
<span style="white-space:pre"> </span>missingMessage:'日期必填!',
-
<span style="white-space:pre"> </span>editable:false
-
});
-
//验证开始时间和结束时间;
-
$('#startTime,#endTime').datetimebox({
-
<span style="white-space:pre"> </span>required:true,
-
<span style="white-space:pre"> </span>missingMessage:'时间必填',
-
<span style="white-space:pre"> </span>editable:false
-
});
-
-
});
-
</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
- 点赞
- 收藏
- 关注作者
评论(0)