Asp.Net 表单验证,需要验证用户名是否存在,但是需要加入一些自定义参数。
BootStrapValidator 的Remote可以进行ajax请求服务器验证。但是有些缺点
- BootStrapValidator作者已经不再提供支持,转而开发整套收费插件Best jQuery plugin
- 关于remote的例子是php的,post的参数不可变
由此就不合适,调试他的源代码也得不偿失。
幸亏在cnblog中查到解决方案。地址:http://www.cnblogs.com/backuper/p/5337411.html
现在的解决方案是callback属性,实例如下:
email: {
validators: {
emailAddress: {
message: '邮箱地址格式不正确'
},
callback: {
message: '注册邮箱已存在',
callback: function (value, validator, $field) {
var bol = true;
abp.ajax({
url: abp.appPath + 'api/services/app/user/IsUserNameOrEmailExists',
type: 'POST',
async: false,
data: JSON.stringify({
Id: $('#Id').val(),
EmailAddress: $('#EmailAddress').val()
}),
}).done(function (data) {
//刷新
bol = !data.valid;
}).fail(function (data) {
bol = true;
});
return bol;
}
},
}
},