0

我的脚本

<script type ="text/javascript">
     $(document).ready(function () {
         $('#<%=Button1.ClientID %>').click(function () {
             var ABC = 'TEST';
             $.ajax({
                 type: "POST",
                 url: "Default.aspx/ServerSideMethod"  ,
                 data: "{ EmailAddress : ABC }",
                 contentType: "application/json; charset=utf-8",
                 dataType: "json",
                 async: true,
                 cache: false,
                 success: function (msg) {
                     alert(msg);
                     $('#myDiv').text(msg.d);
                 }
             })
             return false;
         });
     });
     </script>

代码隐藏方法

[WebMethod]
public static string ServerSideMethod(string EmailAddress)
{
    return EmailAddress ;
}

<asp:Button ID="Button1" runat="server" Text="Click" />
<br /><br />
<div id="myDiv"></div>

在按钮单击它给我InvalidJSONprimitive:ABC这个错误可以告诉任何人我做错了什么。

4

1 回答 1

0

正如错误明确指出的那样,您发送到服务器的 JSON 无效。
JSON 中的字符串文字必须加引号。

您应该调用JSON.stringify({ EmailAddress: ABC })以从 Javascript 对象表达式构建 JSON 字符串。

于 2013-03-08T18:12:34.127 回答