我试图使用jquery ajax将json数组传递给后面的代码。
什么有用:
如果我使用带有空json字符串(.ajax()
)的jQuery "{}"
来调用我的代码隐藏函数,我的代码隐藏函数就会被触发而没有问题。
我想做什么:
如果我把一个Json字符串放到"数据" jQuery .ajax()
的属性,然后使用字符串参数创建函数后面的代码,它不再被触发。
这是我的代码:
客户端
function SendAjax() {
$.ajax({
type: "POST",
contentType: "application/json; charset=utf-8",
url: "Default.aspx/MyFunction",
data: '{"foo":"bar"}',
dataType: "json",
success: function (msg) {
//DO Somtething
},
error: function (xhr, status, error) {
//DO Somtething
}
});
}
服务器端
[WebMethod]
public static string MyFunction(string jsonData)
{
//Do something
return "test";
}
[WebMethod]
我错过了什么吗?
答案 0 :(得分:1)
尝试100%正常工作
function SendAjax() {
var city = "ABC";
$.ajax({
type: "POST",
url: "Default4.aspx/MyFunction",
data: "{jsonData:" + JSON.stringify(city) + "}",
contentType: "application/json; charset=utf-8",
dataType: "json",
success: function (msg) {
alert(msg.d);
},
error: function (xhr, status, error) {
//DO Somtething
}
});
}
[WebMethod]
public static string MyFunction(string jsonData)
{
//Do something
return "test";
}