您的位置:首页 > Web前端 > JQuery

jQuery 表单验证扩展(二)

2010-10-14 09:06 531 查看
前些天写了一篇文章 jQuery 表单验证扩展(一) ,这是jQuery表单验证扩展的一个雏形,里面有了一些基本的功能!昨晚再次努力了一下,对表单中是否必填项验证这个部分做了一些修改的扩充!

一. 存在的问题

在上篇中我已经提到过,验证提示打算用文本和样式两种方式来显示提示消息,这两种提示都只能单独使用,于是新的跟新内容做了一些扩展,使得两者可以共用。前一篇写的是否必填项这个验证只是正对 Text, TextArea 这两个表单元素,在新的扩展中同时也支持了radio,checkbox 两个元素。

二. 验证参数的设计

基于多重选择的考虑,扩展了一些有必要的参数,参数列表如下:

required: 是否为必填项,true 和 false ,true 表示为必填项 (*)

onFocusText: 获得焦点的文字提示

onFocusClass: 获得焦点之后的样式

onErrorText: 验证错误的文本提示

onErrorClass: 验证错误的样式提示

onSuccessText: 验证成功文本提示

onSuccessClass: 验证成功的样式提示

targetId: 提示信息元素的id号

相比之前的做了一些修改,看过之前的文章会知道,我将样式和文本单独分离了,之前是混合在一起的。这也是作为扩展需要的一步考虑。然后变更了错误消息提示参数的名称。

三. 源码解析

验证必填项测试代码 1 <script language="JavaScript" src="jquery-1.3.2.min.js" type="text/javascript"></script>
2 <script language="JavaScript" src="jquery-extend-1.0.0.js" type="text/javascript"></script>
3 <script language="JavaScript" type="text/javascript">
4 $(document).ready(function(){
5 $("#txtName").checkRequired({
6 required:true,
7 onFocusText:"必填项",
8 onFocusClass:"notice",
9 onErrorText:"错误提示",
onErrorClass:"error",
onSuccessClass:"correct",
targetId:"txtNameTip"
});

$("#rdbMan").checkRequired({
required:true,
onFocusText:"必填项",
onFocusClass:"notice",
onErrorText:"错误提示",
onErrorClass:"error",
onSuccessClass:"correct",
targetId:"txtSexTip"
});
$("#rdbWoman").checkRequired({
required:true,
onFocusText:"必填项",
onFocusClass:"notice",
onErrorText:"错误提示",
onErrorClass:"error",
onSuccessClass:"correct",
targetId:"txtSexTip"
});

$("#rdbMan1,#rdbWoman2,#rdbMan3,#rdbWoman4").checkRequired({
required:true,
onFocusText:"必填项",
onFocusClass:"notice",
onErrorText:"错误提示",
onErrorClass:"error",
onSuccessClass:"correct",
targetId:"txthobbyTip"
});
});
</script>

<p>
<label>姓名:</label><input type="text" id="txtName" value=""/><span id="txtNameTip"></span>
</p>

<p>
<label>性别:</label>
<span>
<input id="rdbMan" type="radio" name="sex" value="男" />男    
<input id="rdbWoman" type="radio" name="sex" value="女" />女
</span>
<span id="txtSexTip"></span>
</p>
<p>
<label>爱好:</label>
<span>
<input id="rdbMan1" type="checkbox" name="hobby" value="hobby1" />aa    
<input id="rdbWoman2" type="checkbox" name="hobby" value="hobby2" />bb   
<input id="rdbMan3" type="checkbox" name="hobby" value="hobby3" />aa    
<input id="rdbWoman4" type="checkbox" name="hobby" value="hobby4" />bb   
</span>
<span id="txthobbyTip"></span>
</p>

这里不多说了,文章持续更新中!有问题进一步做修改中.......
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: