jQuery validate+Ajax校验名称是否重复

jQuery validate+Ajax校验

校验名称是否重复的方法:

    代码如下:

jQuery.validator.addMethod("checkname", function (value, element) {
    var resultval = false;
    var name = $("input[name='Name']").val();
    jQuery.ajax({
        type: 'post',
        async:false,
        url: 
        dataType: 'json',
        success: function (result) {
            if (result.code == 0) {
                resultval = false;
            }
            else {
                resultval = true;
            }
        },
        error: function () {
        }
    });
    return resultval;

}, "您的名称重复,请重新输入");
注意:
async:false一定要加上,否则返回值始终为你给的初始值;
 

async解释:

      async. 默认是 true,即为异步方式,$.ajax执行后,会继续执行ajax后面的脚本,直到服务器端返回数据后,触发$.ajax里的success方法,这时候执行的是两个线程。

  async 设置为 false,则所有的请求均为同步请求,在没有返回值之前,同步请求将锁住浏览器,用户其它操作必须等待请求完成才可以执行。

你可能感兴趣的:(前端,validate,validate,ajax验证)