我正在尝试调用一个没有任何参数的页面方法,而且我似乎无法让它工作。
如果我在pagemethod中有一个参数,它可以正常工作。
$.ajax({
type: "POST",
url: "Default.aspx/getLastCallData",
contentType: "application/json; charset=utf-8",
dataType: "json",
success: function(msg) {
alert(msg.d);
},
error: function(XMLHttpRequest, textStatus, errorThrown) {
alert('Couldnt get call data');
}
});
任何想法。
答案 0 :(得分:3)
由于您没有传递任何数据,您仍应添加data参数并传递空的JSON对象。
通过发送一个空的JSON对象,jQuery将正确发送您在$ .ajax调用中定义的contentType。这是一个奇怪的怪癖,jQuery还没有真正解释过。
添加以下参数:
data: "{}"
所以你的电话应该是这样的:
$.ajax({
type: "POST",
url: "Default.aspx/getLastCallData",
data: "{}",
contentType: "application/json; charset=utf-8",
dataType: "json",
success: function(msg) {
alert(msg.d);
},
error: function(XMLHttpRequest, textStatus, errorThrown) {
alert('Couldnt get call data');
}
});
答案 1 :(得分:0)
您是否尝试为POST
切换GET
?不知道这是否有任何区别,但由于你没有发送任何数据,你实际上并没有发布任何数据,你只是获取数据......可能是奇怪的事情。