【问题标题】:Issues calling a page method from javascript从 javascript 调用页面方法的问题
【发布时间】:2021-06-04 12:25:29
【问题描述】:

我以前没用过这个,所以我可能遗漏了一些东西,这可能吗?

 function myFunc(obj) {
        $(document).ready(function () {

            $.ajax({
                type: "POST",
                url: "CMSWebParts_PSS_Test.aspx/CallMe",
                data: obj,
                contentType: "application/json; charset=utf-8",
                dataType: "json",
                success: function (msg) {
                }
            });
        });
    }

还有.cs:

    public partial class CMSWebParts_PSS_Test : CMSAbstractWebPart
    { ...
    [WebMethod]
        public static string CallMe(string data)
        {
           return card;
        }...
    }

我不断收到 404。 尝试使用 PageMethods 但仍然得到相同的结果。

【问题讨论】:

  • 为什么代码隐藏页面不继承自: System.Web.UI.Page

标签: ajax webforms pagemethods


【解决方案1】:

把你的数据变成一个字符串

data: JSON.stringify(obj),

msg 是一个包装器。请求的数据被放入一个属性 -> d

success: function (msg) {
    alert(msg.d):
}

另外,调用你的函数myFunc 使用$(document).ready


更新:尝试将成功部分移到初始调用之外,将名称更改为“完成”。

$.ajax({
    type: "POST",
    url: "CMSWebParts_PSS_Test.aspx/CallMe",
    data: JSON.stringify(obj),
    contentType: "application/json; charset=utf-8",
    dataType: "json"        
}).done(function (msg) {
    alert(msg.d);
)}.fail(function() {
   //
});

【讨论】:

  • 还是找不到CallMe方法,一直报404。
  • 更新您的问题以准确显示您现在拥有的内容,并在某处包含“更新”。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-03-23
  • 1970-01-01
  • 1970-01-01
  • 2012-01-17
  • 2023-04-09
  • 1970-01-01
相关资源
最近更新 更多