带有我的html页面标记的无效JSON

时间:2011-02-15 12:08:20

标签: javascript jquery ajax json

我创建了在本地计算机上成功运行的jquery脚本。但是当我在远程服务器上上传相同的脚本时,jquery脚本会生成错误。错误是“无效的Json”和XMLHttpRequest.responseText属性显示我的html页面标记。我已经花了3天在互联网上找到解决方案,但我没有。我的代码在这里:

  <script type="text/javascript">
       var pageUrl = '<%=ResolveUrl("~/test2.aspx")%>'

        $(document).ready(function () {

            $('#<%=Button1.ClientID %>').click(function () {

                $.ajax({
                      type: "POST",
                        url: pageUrl+ "/ServerSideMethod",
                        data: "{}",
                        contentType: "application/json; charset=utf-8",
                        dataType: "json",
                        success: function (msg) {
                            alert("1");
                        $('#myDiv').text(msg.d);
                    },
                       error: function(XMLHttpRequest, textStatus, errorThrown) { 
                    alert("Failure: " + textStatus + XMLHttpRequest.responseText ); 
                   }

                  })                     
                return false;
            });
        }); 
    </script> 

我的网络方法是

_

Public Shared Function ServerSideMethod() As String

    Return ("Muhammad Aurangzeb")

End Function  

2 个答案:

答案 0 :(得分:0)

问题来自您的“/ ServerSideMethod”生成的json。使用http://jsonlint.com/检查是否有效以查找问题。 通常是引用的历史与“

”的良好运用

答案 1 :(得分:0)

如果您的页面方法返回页面的HTML,但您的本地设置工作正常,则您的远程服务器配置不正确。

如果是ASP.NET 3.5,请确保远程服务器的web.config与本地服务器匹配。

如果是ASP.NET 2.0,则还需要安装ASP.NET AJAX Extensions。

更多信息:http://encosia.com/2010/03/08/asmx-scriptservice-mistakes-installation-and-configuration/