jquery.validate的使用

时间:2023-03-09 08:34:06
jquery.validate的使用

在页面上面引用

<script  type="text/JavaScript" src="js/jQuery.js"></script>
<script type="text/JavaScript" src="js/jquery.form.js"></script>
<script type="text/JavaScript" src="js/jquery.validate.js"></script>
<script type="text/JavaScript" src="validator/jquery.metadata.js"></script>
<script type="text/JavaScript" src="js/localization/messages_cn.js"></script>

页面html代码

<form id='form1'>
<fieldset>
<legend>jquery.validate+jquery.form</legend>
<p>
<label for='cusername'>
姓名</label><em>*</em>
<input id='cusername' name='username' class="{required:true,minlength:5}" size='' />
</p>
<p>
<label for='cemail'>
电子邮件</label><em>*</em>
<input id='cemail' name='email' class="{required:true,email:true}" size='' />
</p>
<p>
<input class='submit' type='submit' value='提交'>
</p>
</fieldset>
</form>

执行js代码

$().ready( function() {
$(function() {
//表单验证JS
$("#form1").validate({
//出错时添加的标签
errorElement: "span",
success: function(label) {
//正确时的样式
label.text(" ").addClass("success");
}
});
}); });

jquery.validate的使用

在html的代码中input的class属性为{required:true,email:true}意思是在
js/localization/messages_cn.js里面有说明,代码如下
jQuery.extend(jQuery.validator.messages, {
required: "必填字段",
remote: "请修正该字段",
email: "请输入正确格式的电子邮件",
url: "请输入合法的网址",
date: "请输入合法的日期",
dateISO: "请输入合法的日期 (ISO).",
number: "请输入合法的数字",
digits: "只能输入整数",
creditcard: "请输入合法的信用卡号",
equalTo: "请再次输入相同的值",
accept: "请输入拥有合法后缀名的字符串",
maxlength: jQuery.validator.format("请输入一个长度最多是 {0} 的字符串"),
minlength: jQuery.validator.format("请输入一个长度最少是 {0} 的字符串"),
rangelength: jQuery.validator.format("请输入一个长度介于 {0} 和 {1} 之间的字符串"),
range: jQuery.validator.format("请输入一个介于 {0} 和 {1} 之间的值"),
max: jQuery.validator.format("请输入一个最大为 {0} 的值"),
min: jQuery.validator.format("请输入一个最小为 {0} 的值")
});

如果需要将提交方式改成ajax提交

<form id='form1'>
<fieldset>
<legend>jquery.validate+jquery.form</legend>
<p>
<label for='cusername'>
姓名</label><em>*</em>
<input id='cusername' name='username' class="{required:true,minlength:5}" size='25' />
</p>
<p>
<label for='cemail'>
电子邮件</label><em>*</em>
<input id='cemail' name='email' class="{required:true,email:true}" size='25' />
</p>
<p>
<input type='button' id='btnSubmit' value='提交'>
</p>
</fieldset>
</form>

js代码是

$("#btnSubmit").click(function () {
var param = $("#form1").serialize();//序列化
if ($("#form1").valid()) {//通过验证才进入ajax
$.ajax(
{
url: "xxx.ashx",
type: "get",
data: param,
dataType: "json",
success: function(data) {
alert(data);
}
});
}
});