我正在尝试调用 jQuery 函数$.get()
来调用 myWebMethod
但它只是Page_Load
在后面的代码中触发事件。我可以看到请求在 firebug 中发送到,/admin/manage-users.aspx/deleteUser?u=user1
但它从未命中 WebMethod。
jQuery
$('#delete').each(function () {
$(this).click(function () {
var userName = $(this).closest('tr').find('span.userName').text();
$.get('/admin/manage-users.aspx/deleteUser', { u: userName });
});
});
aspx.cs
[WebMethod]
public void deleteUser() {
string userName = Request.QueryString["u"];
if(!string.IsNullOrEmpty(userName)) {
if(Membership.DeleteUser(userName))
Response.Redirect(Request.Url.ToString());
}
}
解决方案
我把下面的 bugz 归功于他,因为他为我指明了正确的方向。
为了让你
[WebMethod]
在aspx中工作你的方法必须是静态的