2

我有一个 default.aspx (c#) 页面,它有一个简单的 Post AJAX 调用,WebMethod它返回一个 JSON 对象,这样我就可以填充一个 DataTable。在我引入登录页面之前一切正常。现在,当用户被重定向到默认页面时,登录后,帖子永远不会出现在 FireBug 中。

这是我的 AJAX 调用:

$.ajax({
            type: 'POST',
            url: '/Default.aspx/GetValueDateSummary',
            contentType: 'json',
            data: {},
            sucess: function (response) {
                renderTable(response.d);
            },
            error: function (errMsg) {
                $('#errorMessage').text(errMsg);
            }
        });
    });

后面的代码是:

[WebMethod]
[ScriptMethod(ResponseFormat = ResponseFormat.Json, UseHttpGet = true)]
public static List<ValueDateSummary> GetValueDateSummary()
{
    some code in here.....

   return drList;
}
4

3 回答 3

1
sucess: function (response) {

应该

success: function (response) {
于 2013-03-18T16:32:49.157 回答
0

您使用的是 ScriptManager 对象吗?如果是这样,我相信您需要启用页面方法才能使其工作。

<asp:ScriptManager ID="ScriptManager1" runat="server" EnablePageMethods="true">
</asp:ScriptManager>
于 2013-03-18T16:25:50.693 回答
0

好的,我整理了。

这是完整的 Ajax 调用,似乎我缺少正确的 contentType 和 dataType

               $.ajax({
               type: 'POST',
               url: 'Default.aspx/GetValueDateSummary',
               contentType: 'application/json;charset=utf-8',
               dataType: 'json',
               success: function (response) {
                   console.log(response);
                   alert(response.d);
                   renderTable(response.d);
               },
               error: function (errMsg) {
                   $('#errorMessage').text(errMsg);
               }
           });
于 2013-03-19T09:55:10.400 回答