[转]MVC+JQuery validate实现用户输入验证
2024-10-19 11:55:25
本文转自:http://www.cnblogs.com/ahui/archive/2010/10/08/1845677.html
MVC服务器端:
1.在controller中验证用户输入,如果验证失败,执行
ModelState.AddModelError("LoginName", Resource.LoginName + Resource.WordSpace + Resource.CanNotBeBlank);
2.在View视图某一个地方放置
<%=Html.ValidationSummary()%>
JS客户端:
1.引放相应的JS文件
<script src="/Js/jquery-1.4.2.js" type="text/javascript"></script>
<script src="/Js/jquery.validate.js" type="text/javascript"></script>
2.在View视图某一个地方放置
<label id="messageBox"></label>
3.以常规的submit()方式提交,在页面最下面加入以下JS代码
$(function() {
$("#form1").validate({
rules: {
LoginName: { required: true, regex: "^[0-9]+$" }
},
messages: {
LoginName: "<%=Resource.LoginName + Resource.WordSpace + Resource.CanNotBeBlank%>"
},
errorLabelContainer: "#messageBox",
wrapper: "li"
});
});
4.以Ajax方式提交到服务器的,JS代码要改为:
var validate = null;
var opts = {
rules: {
LoginName: { required: true, regex: "^[a-zA-Z][a-zA-Z0-9._-]{3,20}$" }
},
messages: {
LoginName: "请输入正确的登陆名"
},
errorLabelContainer: "#messageBox",
wrapper: "li"
}; function checkForm() {
var b = validate.checkForm();
validate.showErrors();
return b;
} $(function () {
validate = $("#form1").validate(opts);
}); function SaveUser() {
if (!checkForm()) {
return;
}
//...........
}
要支持regex方式的验证,请在jquery.validate.js加入:
// 正则表达式
$.validator.addMethod(
"regex",
function (value, element, regexp) {
var check = false;
var re = new RegExp(regexp);
return this.optional(element) || re.test(value);
},
"Please check your input."
);
以上代码已实现双语化提示
其它常用的验证方式有:
required, remote, minlength, maxlength, rangelength, min, max, range, email, url, date, dateISO, number, digits, creditcard, accept, equalTo等
可参见:
http://docs.jquery.com/Plugins/Validation/validate
最新文章
- React Native 之TabBarIOS
- 第四章 Js的面向对象的初窥视(天生的哈希表)
- msf命令全集
- BZOJ 2292 永远挑战
- 一次zabbix的渗透
- 使用静态变量的方法求n!
- git push提示或错误
- MS-SQL数据库备份方法
- java poi 导入excel
- String类的源码分析
- 通过iis访问电脑文件
- .NET Core[MVC] 利用特性捕捉异常
- html图片上传阅览并且点击放大
- ajax调用WebService实现数据库操作
- MVC 表单提交
- FastReport.Net使用:[2]添加MSSQL数据源一
- h5和app原生联调触发方法
- CSS学习(二)
- [转] 有关java中两个整数的交换问题
- (C#)工厂方法模式
热门文章
- 修改Tomcat主目录
- MySQL参数log_bin_trust_function_creators
- js去重方法
- 10、C++函数
- TX2 默认root用户启动
- angularjs指令弹框点击空白处隐藏及常规方法
- python学习之路---day26
- Vuex 使用了 module 后的访问方法 ..
- ORA-28009: 应当以 SYSDBA 身份或 SYSOPER 身份建立 SYS 连接
- 115th LeetCode Weekly Contest Prison Cells After N Days