在jquery中调用代码隐藏方法,但找不到该方法

本文关键字:方法 找不到 隐藏 jquery 调用 代码 | 更新日期: 2023-09-27 18:26:00

我的代码隐藏:

[WebMethod]
public bool accountExists(string username, string password) {
//code...
}

我的jquery:

$.ajax({
      type: "POST",
      url: "MyPage.ascx/accountExists",
      data: JSON.stringify({ username: txtUsername.val(), password: txtPassword.val()}),
      contentType: "application/json; charset=utf-8",
      dataType: "json",
      success: function(msg) {
        alert(msg.d)
      },
      error: function(msg) {
        alert("ERROR: " + msg.d)
      }
    });

我总是在警报上显示"ERROR: " + msg.d

MyPage.ascx位于文件夹"Controls"中,因此我尝试在没有任何更改的情况下设置url: "Controls/MyPage.ascx/accountExists"

在jquery中调用代码隐藏方法,但找不到该方法

ASP.NET AJAX页面方法旨在在.aspx页面内部运行,而不是在.ascx用户控件内部运行。

WebMethod逻辑移动到.aspx页面中,并通过jQuery更新AJAX调用。