asp.net MVC2中利用jquery.validate进行用户注册验证

首先在模板页面中引入jquery类库和jquery.validate类库

<script src="/Scripts/jquery-1.4.1.js" type="text/javascript"></script>

<script src="http://www.cnblogs.com/Scripts/jquery.validate.js" type="text/javascript"></script>

<script src="http://www.cnblogs.com/Scripts/JQuery.Validate.Message_cn.js" type="text/javascript"></script>

其中JQuery.Validate.Message_cn是对jquery.validate类库中的英文出错信息用中文替换,代码如下:

//定义中文消息

var cnmsg = {

required: "必选字段",

remote: "请修正该字段",

email: "请输入正确格式的电子邮件",

url: "请输入合法的网址",

date: "请输入合法的日期",

dateISO: "请输入合法的日期 (ISO).",

number: "请输入合法的数字",

digits: "只能输入整数",

creditcard: "请输入合法的信用卡号",

equalTo: "请再次输入相同的值",

accept: "请输入拥有合法后缀名的字符串",

maxlength: jQuery.format("请输入一个长度最多是 {0} 的字符串"),

minlength: jQuery.format("请输入一个长度最少是 {0} 的字符串"),

rangelength: jQuery.format("请输入一个长度介于 {0} 和 {1} 之间的字符串"),

range: jQuery.format("请输入一个介于 {0} 和 {1} 之间的值"),

max: jQuery.format("请输入一个最大为 {0} 的值"),

min: jQuery.format("请输入一个最小为 {0} 的值")

};

jQuery.extend(jQuery.validator.messages, cnmsg);

一定要注意母板页中引用的先后顺序,因为下边的类库都是基于上边的,所以顺序不能颠倒。

然后在view中用jquery.validate进行验证,view代码如下:

register.aspx//用户注册页面

<form action="/Account/LogOn" method="post" ).val();

}

}

}

}

,

Email:

{

email: true

},

pwd:

{

required: true,

minlength: 6

},

pwdagain:

{

required: true,

minlength: 6,

equalTo: "#pwd"

}

},

messages:

{

user_name:

{

required: "请输入用户名",

remote: "该用户已存在!"

}

}

}

}

jQuery(document).ready(function () {

InitRules();

if (opts != undefined || opts != null) {

jQuery("#<%=form1.ClientID %>").validate(opts);

} else {

jQuery("#<%=form1.ClientID %>").validate();

}

});

</script>

UsersController代码如下:

public class UsersController : Controller

{

//

// GET: /User/

UserRepository userRepository = new UserRepository();

public JsonResult IsUserExist(string user_name)

{

//JsonResult result = new JsonResult();

if (userRepository.ValidateUser(user_name))//查询是否存在该用户

{

//result.Data = false;

return Json(false);

}

else

{

//result.Data = true;

return Json(true);

}

//return Json(result, JsonRequestBehavior.AllowGet);

}

注意直接返回json(true)或json(false)即可。