我有一个非常好的jquery ajax功能,但我做得更好。
我有这个:
function MakeAjaxCalls () {
.....
$.ajax({
...
success: function (msg) {
var data = msg.hasOwnProperty("d") ? msg.d : msg;
....
},
error: function (xhr, status, error) {alert(xhr.statusText);}
});
}
工作正常。现在我想这样做:
function MakeAjaxCall() {
$.ajax({
...
success: MySuccessFunction,
error: MyErrorFunction
});
}
function MySuccessFunction(TheJsonData) {
alert("baaaam"); // no baaaam
....
}
function MyErrorFunction(){
....
}
问题是它永远不会到达MySuccessFunction。但是,当我查看网络活动时,我仍然可以在线路上获得正确的数据。我尝试用成功改变行:MySuccessFunction(TheJsonData)和成功:MySuccessFunction(TheJsonData.d)来添加参数,但它仍然没有触发,并且在每种情况下,我都没有得到javascript错误;它只是不会触发。
我错过了什么?
答案 0 :(得分:0)
如果代码以这种方式组织,则在您调用MySuccessFunction
时未定义jQuery.ajax({ ... })
。
我建议您定义成功功能 - 在调用jQuery.ajax