07月
19
使用jquery及其扩展来进行客户端数据检测
文章分类:jQuery 查看次数:593 + 102
“用户的输入都是不可靠的”,忘了是哪位牛人说的这句话,所以对用户输入的数据进行检测是非常必要的,这里以用户注册为例。
正常情况下,用户注册的数据通常进行客户端和服务端双重检测,而客户端的检测用js写起来总是稍显麻烦,有时还会出现不兼容的情况。而如果通过jquery来实现则会事半功倍。
jquery,我不想再说了,只要是涉及到js编程,我都会把她请出来,今天就要通过她和她的一个插件来完成这项任务。
首先:当然是把两个js文件包含进来
<script src="jquery.validate.min.js" type="text/javascript"></script>
然后就可以进入正题了,一步一步来
debug: true
});
设置默认的状态为debug,这样用户的数据就不会提交了。
接下来是一段比较长的代码,但是不用怕,因为真的挺简单的
$().ready(function() {
$("#myform").validate({
//设置默认的状态为keyup,也可以设置为blur
event: "keyup",
//设定规则
rules: {
//对应id为'username'的input
username: {
//必填项
required: true,
//最多和最少的字符数
rangeLength:[4,16]
},
mail: {
required: true,
//声明这是一个电子邮件
email: true
},
password: {
required: true,
//最少4个字符
minLength: 4
},
confirm_password: {
required: true,
minLength: 4,
// 与哪个等同,这里是id为password的input等同
equalTo: "#password"
},
agree: "required"
},
//这里是与规则对应的错误代码
messages: {
username: {
//如果用户名为空,则显示下面的信息
required: '请输入用户名',
//如果字符串的长度不符合,则显示下面的信息
rangeLength: '用户名必须在4-16个字符之间'
},
password: {
required: '请输入密码',
minLength: '密码必须大于4个字符'
},
confirm_password: {
required: '请确认你的密码',
equalTo: '两次密码输入不一致',
minLength: '密码必须大于4个字符'
},
agree: '请同意我们的条款',
mail: '请输入有效的E-MAIL帐户'
},
//可选项,当用户的输入符合我们设定的规则时显示
success: function(label) {
label.html('√').addClass("success");
}
});
});
</script>
代码里写了注释,看起来应该还是比较容易理解的吧,最后就是一个form
<fieldset>
<legend>用户注册界面</legend>
<p><label for="username">用户名:</label>
<input type="text" name="username" id="username" />
<p><label for="mail">电子邮件地址:</label>
<input type="text" name="mail" id="mail" />
<p><label for="password">密码:</label>
<input type="password" name="password" id="password" />
<p><label for="confirm_password">密码确认:</label>
<input type="password" name="confirm_password" id="confirm_password" />
<p><label for="agree">请同意我们的条款:</label><input type="checkbox" name="agree" id="agree" />
<div id="submit"><input type="submit" value="Submit" /></div>
</fieldset>
</form>
表单最好以这种形式来书写,如果不熟悉可以参见我之前翻译过的一片文章,css form design
如果要查看更详细的说明,点此进入官方网站
相关文章
评论
共3 条评论 to “使用jquery及其扩展来进行客户端数据检测”
发表评论

如此强,有了jquery,我还。。。。
有日历的插件吗?
[回复此评论]
没有找到合适的日历插件,不过倒是有一款独立的弹出日历源码。
http://dali.mty.itesm.mx/~hugo/js/datepickercontrol/
这个是我比较各款日历选择后,性价比很不错的一款
[回复此评论]
用jquery做的好的日历:http://marcgrabanski.com/code/ui-datepicker/
[回复此评论]