ajax jquery总是运行Error

Dav*_*vid 25 jquery

每次我运行我的ajax jquery函数时都会出错,这适用于我所有的ajax调用.这是我的代码的一个例子

 function FindContact(CompanyName,DivisionName,FirstName,LastName) {

        $.ajax({
            url: 'Path',
            dataType: "json",
            async:false,
            type:'post',
            data: {'FirstName':FirstName,'LastName':LastName,'DivisionName':DivisionName,'CompanyName':CompanyName},
            success: DisplayContacts,
            error: ErrorMsg
        });
    }
Run Code Online (Sandbox Code Playgroud)

为了解决这个问题,我使用它

 function ErrorMsg(result) {
        if (result.status == 200 && result.statusText == 'OK') {
            DisplayContacts(result);
        }
        else {
            alert("FAILED : " + result.status + ' ' + result.statusText);
        }
    }
Run Code Online (Sandbox Code Playgroud)

这很难,因为我需要为每个ajax请求创建这样的方法.

为什么它运行错误代码第一???

请帮忙!

loc*_*zak 53

确保您返回的内容是有效的json.如果不是,并且服务器上的一切正常,$ .ajax将会出错而不是成功.

 function FindContact(CompanyName,DivisionName,FirstName,LastName) {

        $.ajax({
            url: 'Path',
            dataType: "html or json",
            async:false,
            type:'post',
            data: {'FirstName':FirstName,'LastName':LastName,'DivisionName':DivisionName,'CompanyName':CompanyName},
            success: DisplayContacts,
            error: ErrorMsg
        });
    }

快速检查json是否有效只是将dataType切换为html并看到成功被触发.如果它比你的json无效,如果你仍然得到同样的问题,那么其他错误.

另一种检查是否返回有效json的方法是,打开firebug,当请求被发送时,单击响应选项卡,复制响应并到达jsonlint.com以检查其是否有效.

Jquery ajax docs