$(document).ready(function () {
jQuery.validator.addMethod("namerepeate", function(value, element) { //用jquery ajax的方法验证客户名称是不是已存在
var flag = false;
$.ajax({
type:"POST",
url:'@Url.Action("TestClientNameIsRepeat", "ClientExt", new { area = "Client" })',
async:false, //同步方法,如果用异步的话,flag永远为1
data:{'name':$("#Name").val(),'clientId':$("#ClientID").val()},
success: function(data){
flag = data.IsNameRepeate;
}
});
return !flag;
}, "客户名称已存在于客户数据中,不要重复添加。"); jQuery.validator.addMethod("deptrepeate", function (value, element) { //用jquery ajax的方法验证客户名称是不是已存在
var flag = false;
$.ajax({
type: "POST",
url: '@Url.Action("TestClientNameIsRepeat", "ClientExt", new { area = "Client" })',
async: false, //同步方法,如果用异步的话,flag永远为1
data: { 'name': $("#DeptName").val(), 'clientId': $("#ClientID").val() },
success: function (data) {
flag = data.IsNameRepeate;
}
});
return !flag;
}, "客户名称已存在于客户数据中,不要重复添加。");
});

后台检测方法

 public JsonResult TestClientNameIsRepeat(string name,int clientId = )
{
if (string.IsNullOrEmpty(name))
{
return Json(new { IsNameRepeate = false }, JsonRequestBehavior.AllowGet);
}
return Json(new
{
IsNameRepeate = clientRepository.GetClients(p=> p.ClientID != clientId && (p.Name == name ||p.DeptName == name),false).Any()
}, JsonRequestBehavior.AllowGet);
}

扩展:自定义方法的错误消息,比如查询是谁添加了这条记录,可以参考下面代码

$.validator.addMethod('PD_password', function (value, element) {
var len = value.length;
if(len<6){
$(element).data('error-msg','长度不能少于6位');
return false;
}
if(len>15){
$(element).data('error-msg','长度不能大于15位');
return false;
}
return true;
}, function(params, element) {
return $(element).data('error-msg');
});

Jquery Validator 增加自定义验证方法的更多相关文章

  1. jQuery.validator.addMethod自定义验证方法

    在开发中用到了jQuery的validate控件,有时需要自定义验证方法.我们可以通过jQuery.validator.addMethod()来实现,下面是例子: <!DOCTYPE html ...

  2. jQuery.validator.addMethod自定义验证

    jQuery.validator.addMethod("numOrLetter", function(value, element) { return this.optional( ...

  3. jquery.validate使用 - 自定义验证方法

    自定义jquery-validate的验证行为 1: 自定义表单提交 设置submitHandler来自定义表单提交动作 $(".selector").validate({    ...

  4. jquery validate 自定义验证方法

    query validate有很多验证规则,但是更多的时候,需要根据特定的情况进行自定义验证规则. 这里就来聊一聊jquery validate的自定义验证. jquery validate有一个方法 ...

  5. jquery validate 自定义验证方法 日期验证

    jquery validate有很多验证规则,但是更多的时候,需要根据特定的情况进行自定义验证规则. 这里就来聊一聊jquery validate的自定义验证. jquery validate有一个方 ...

  6. jquery.validate remote 和 自定义验证方法

    jquery.validate remote 和 自定义验证方法 $(function(){ var validator = $("#enterRegForm").validate ...

  7. validate插件深入学习-04自定义验证方法

    自定义验证方法 jQuery.validator.addMethod(name,method,[,message]) name: 方法名 method: function(value,element, ...

  8. jqery validate、validate自定义验证方法 + jaery form Demo

    校验规则 required:true  必输字段 remote:"check.php"  使用ajax方法调用check.php验证输入值 email:true  必须输入正确格式 ...

  9. Spring Security验证流程剖析及自定义验证方法

    Spring Security的本质 Spring Security本质上是一连串的Filter, 然后又以一个独立的Filter的形式插入到Filter Chain里,其名为FilterChainP ...

随机推荐

  1. python调用java--JPype

    JPype 是一个能够让 python 代码方便地调用 Java 代码的工具,从而克服了 python 在某些领域(如服务器端编程)中的不足.JPype 的使用一个简单的 hello world 程序 ...

  2. Dia Diagram Editor(流程图、UML)免费开源绘图软件

    近期工作各种繁忙,导致很少分享自己喜欢和常用的一些工具,今天有点时间再次给各位喜欢开源的小伙伴介绍一个好用.免费.开源的软件Dia Diagram Editor. 首先给大家看看这个软件的主界面吧! ...

  3. iOS日期转换之UTC/GMT时间格式

    GMT只需要将代码中的UTC替换为GMT即可 //将本地日期字符串转为UTC日期字符串 //本地日期格式:2013-08-03 12:53:51 //可自行指定输入输出格式 -(NSString *) ...

  4. Unity C# 设计模式(六)原型模式

    定义:用原型实例指定创建对象的种类,并通过拷贝这些原型来创建新的对象. 优点: 1.原型模式向客户隐藏了创建新实例的复杂性 2.原型模式允许动态增加或较少产品类. 3.原型模式简化了实例的创建结构,工 ...

  5. Linux学习之socket编程(一)

    socket编程 socket的概念: 在TCP/IP协议中,“IP地址+TCP或UDP端口号”唯一标识网络通讯中的一个进程,“IP地址+端口号”就称为socket. 在TCP协议中,建立连接的两个进 ...

  6. 使用安卓手机连接win7的热点

    转载自:http://bbs.tgbus.com/thread-2354596-1-1.html 附件下载 亲测可用: wifi信号是满格的

  7. Codeforces Round #313 (Div. 2) 解题报告

    A. Currency System in Geraldion: 题意:有n中不同面额的纸币,问用这些纸币所不能加和到的值的最小值. 思路:显然假设这些纸币的最小钱为1的话,它就能够组成随意面额. 假 ...

  8. Activity的launchMode和任务栈小结

    对Activity的launchMode的理解一直没有好好总结下,这两天系统总结下launchMode的使用方法: Activity的launchMode属性决定了Activity和应用程序当前任务栈 ...

  9. CentOS下安装C/C++开发工具包的最佳方式

    如果你使用的是 Fedora, Red Hat, CentOS, 或者 Scientific Linux 系统,使用下面的命令安装GNU的C/C++开发包和编译器. # yum groupinstal ...

  10. BZOJ 3631 链剖+差分

    思路: 1.树链剖分+用带标记的线段树维护操作(复杂度O(nlog2n)) 2.树链剖分LCA(TarjanLCA等各种LCA)+差分 复杂度(O(n)->O(nlogn)之间) 下面就说说怎么 ...