我只是想知道,是否可以使用jquery(“$.ajax”)发出Ajax请求并在不使用.NET Ajax框架(没有脚本管理器)的情况下进行部分渲染。
我以前尝试过这个,但它每次都执行page_load
并且没有到达pagemethod。
function doAsync()
{
jQuery.ajax({
type: "POST",
url: "/WebForm1.aspx/testMethod",
error: function (xhr, status, error) { alert(status); },
success: function (response) { alert('suc'); }
)};
}
[WebMethod]
public static void testMethod()
{
//server side code
}
这里有什么问题吗?
谢谢!
最佳答案
您缺少的是内容类型。要向页面方法发出请求,您必须完全像这样进行调用:
$.ajax({
type: "POST",
url: "/WebForm1.aspx/testMethod",
data: "{}",
contentType: "application/json; charset=utf-8",
dataType: "json",
success: function(msg) {
// Do something interesting here.
}
});
有关更多详细信息,请参阅此:http://encosia.com/2008/05/29/using-jquery-to-directly-call-aspnet-ajax-page-methods/
关于asp.net - 使用 jQuery 发出 .NET Ajax 请求,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2098898/