AJAX调用有时会产生错误

时间:2011-10-05 22:32:06

标签: jquery ajax

任何人都可以向我解释为什么我的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;
    });

1 个答案:

答案 0 :(得分:0)

这可能正在发生,因为有时成功回调中的变量msg返回undefined。您没有检查该变量的null,empty或undefined。