【发布时间】:2013-11-08 22:02:32
【问题描述】:
我正在尝试通过 AJAX 使用 jQuery 在单独的 ASPX 文件中调用一个方法。在使用相同的基本程序运行了许多教程之后,我仍然没有运气。
这是标记
<input class="myButton">
<div id="debug"></div>
jquery
$(".myButton").click(function(e){
e.preventDefault();
alert('go'); //this triggers just fine.
$.ajax({
type: "POST",
url: "/functions.aspx/ServerSideMethod",
data: "{'param1': 'foo'}",
contentType: "application/json; charset=utf-8",
dataType: "json",
async: true,
cache: false,
success: function (msg) {
$('div#debug').text(msg.d);
}
});
});
以及驻留在我的 functions.aspx 文件中的 ASP(全部,完全未经编辑)
[WebMethod]
public static string ServerSideMethod(string param1)
{
return "Message from server with parameter:"+param1;
}
目前,它似乎可以正常连接到页面。我得到的错误如下:
未知的网络方法 ServerSideMethod。参数名称:方法名
描述:执行过程中发生了未处理的异常 当前的网络请求。请查看堆栈跟踪以获取更多信息 有关错误的信息以及它在代码中的来源。
异常详细信息:System.ArgumentException:未知的网络方法 服务器端方法。参数名称:方法名
【问题讨论】:
-
我认为你可以使用 __doPostBack() webpronews.com/postbacks-with-parameters-in-javascript-2007-01
-
这似乎是一条不错的路线……但是如何传递参数呢?从您的链接看来,这应该是可能的,但我似乎无法理解它们。
-
__doPostBack 将回发整个页面。我想@sdowswell 不想刷新整个页面。