这是我的default.aspx
$.ajax({
url: "Default.aspx/Myfunction",
dataType: "json",
type: "POST",
data: {someParameter: "some value"},
contentType: "application/json; charset=utf-8",
success: function (data) {
alert(data.d);
},
error: function (d) {
alert("error");
}
});
这是我的代码隐藏:
[WebMethod]
public static string Myfunction(string someParameter)
{
return "hello";
}
它继续发生错误。我看到,如果我发送带有null的Ajax请求数据并且函数上没有参数,我会得到数据“hello”out。所以我发送数据的方式存在一些问题,但目前还不清楚是什么
答案 0 :(得分:1)
将参数放在引号
中$.ajax({
url: "Default.aspx/Myfunction",
dataType: "json",
type: "POST",
data: {'someParameter': 'some value'},
contentType: "application/json; charset=utf-8",
success: function (data) {
alert(data.d);
},
error: function (d) {
alert("error");
}
});
答案 1 :(得分:1)
数据对象必须是单个字符串。
data: JSON.stringify({someParameter: "some value"})
答案 2 :(得分:0)
更改此行:
data: {someParameter: "some value"},
为:
data: {"someParameter": "some value"},
JSON对象属性需要用引号括起来。
答案 3 :(得分:0)
以下是我如何做同样的事情:
$.ajax({
type: "POST",
dataType: "json",
url: "RouteService.asmx/getRouteData",
data: { techID: techID, jobID: jobID },
success: function(msg) {
processRouteData(msg);
}
尝试删除此行:
contentType: "application/json; charset=utf-8",