Ajax调用返回页面源代码作为响应而不是json数据

时间:2013-12-05 23:13:29

标签: jquery asp.net ajax json iis

使用Visual Studio,一切都在本地完美运行,但是当我在IIS上托管它时会出现问题。我检查了chrome的网络选项卡,我得到了响应作为页面的源代码,而不是json字符串导致错误说“意外令牌<”

这是ajax方法。

$(document).ready(function () {
    SearchText();
});
function SearchText() {
    $("#<%= txt_supplier.ClientID %>").autocomplete({
        source: function (request, response) {
            $.ajax({
                type: "POST",
                contentType: "application/json; charset=utf-8",
                //url: "Default.aspx/GetAutoCompleteData",
                url: "AutoComplete.asmx/GetAutoCompleteData",
                data: "{'username':'" + document.getElementById('<%= txt_supplier.ClientID %>').value + "'}",
                dataType: "json",
                success: function (data) {
                    alert(data.d.toString());
                    response(data.d);
                },
                error: function (result) {
                    alert(result.status + ' ' + result.statusText);
                }
            });
        }
    });
}

网络服务方法如下:

[WebMethod]
[ScriptMethod(UseHttpGet = false, ResponseFormat = ResponseFormat.Json)]
public string GetAutoCompleteData(string username)
{
    List<string> result = OldTurtle_BizSuite_EasyHelp2.Pages.Tickets_New.GetAutoCompleteData(username);
    return js.Serialize(result);
}

我觉得iis设置或web.config存在一些问题,但不知道是什么。请帮忙。我正在研究过去3天。

0 个答案:

没有答案