-1

这是我的ajax请求:

$("#<% =txtDiagnosisData.ClientID %>").autocomplete({                
                source: function (request, response) {
                    $.ajax({
                        type: "POST",
                        url: 'EMR.aspx/SearchDiagnosis',
                        contentType: "application/json;charset=utf-8",
                        dataType: "json",
                        success: function (data) {
                          //  response(data.d);
                            alert("success");
                        },
                        error: function (result) {
                            alert("error");
                        }
                    });
                }
            });

这是我的功能:

[WebMethod]
public static List<string> SearchDiagnosis()
{
    return new DataAccess().GetDiagnosis();
}

我的方法不是从ajax调用的,它总是进入错误部分如何解决这个问题?

4

1 回答 1

0

可能存在一个问题,即您可能Session直接或间接地在 Web 方法中使用变量。

函数中的某处DataAccess().GetDiagnosis();

在这种情况下,使用属性[WebMethod(enableSession: true)]而不是 [WebMethod] 也尝试通过正确实现错误来获取错误,如下所示

 error: function (jqXHR, textStatus, errorThrown) {
              if (jqXHR.status == 500) {
                  alert('Internal error: ' + jqXHR.responseText);
              } else {
                  alert('Unexpected error.');
              }
          }

参考:jQuery ajax 错误函数,看看你到底得到了什么错误。

于 2020-11-23T13:01:12.213 回答