任何人都可以向我解释为什么我的ajax调用在页面上的初始时间工作并继续工作,直到我在页面上一段时间没有任何操作。看起来好像是超时但是这是不可能的,因为它从输入框中检索值并使用这些值调用ajax。
$('#cmdSubmit_Search').click(function () {
$('#hdnMode').val('search');
$('#divResults').hide();
$('#divLoading').fadeIn(250);
var searchParam = $('#ddSearchBy_Search').val();
var searchValue;
if ($('#ddSearchBy_Search').val() == "schoolid") {
searchValue = $('#ddSearchSchools').val();
}
else {
searchValue = $('#txtSearchValue').val();
}
$.ajax({
type: "POST",
url: "SourceCodeTool.aspx/searchSources",
data: '{"searchParam":"' + searchParam + '","searchValue":"' + searchValue + '"}',
contentType: "application/json",
dataType: "json",
success: function (msg) {
// Replace the div's content with the page method's return.
$('#divLoading').hide();
$('#divResults').fadeIn(2000);
document.getElementById('divResults').innerHTML = msg.d;
},
error: function (xhr, status, error) {
$('#divLoading').fadeOut(500);
alert('error' + error);
}
});
return false;
});
答案 0 :(得分:0)
这可能正在发生,因为有时成功回调中的变量msg返回undefined。您没有检查该变量的null,empty或undefined。