[英]Jquery Ajax POST Request sending data issue
我进行了很多搜索,但无法找到有效的解决方案来解释为什么我的发帖请求没有将其数据发送到服务器。 我可以发送不带数据的请求,并且可以从服务器获取结果,但是我无法将数据发送至服务器。 我将其范围缩小到“数据”属性,并假设我做错了什么。 谢谢。
客户
var scriptURL = "default/scripts/serverside/Scripts.aspx";
$.ajax({
type: "POST",
url: baseURL + scriptURL + "/SaveItem",
data: "{}", //works (to return a result)
//data: "{sendData: '" + dataPackage + "'}", //does not work
//data: dataPackage, //does not work
//data: { sendData: dataPackage }, //does not work
//data: { "sendData": dataPackage }, //does not work
contentType: "application/json; charset=utf-8",
dataType: "json",
success: function (result) {
de("server result:" +result);
}
});
服务器
[WebMethod]
public static string SaveItem(string sendData)
{
string result = "received: " + sendData;
return result;
}
请帮助,我似乎无法正常工作,并且知道它必须是语法问题...
我发现了类似的问题(但没有有效的答案):
试试这个:
$.ajax({
type: "POST",
url: baseURL + scriptURL + "/SaveItem",
data: $.toJSON({ sendData: dataPackage }),
contentType: "application/json; charset=utf-8",
dataType: "json",
success: function (result) {
de("server result:" +result);
}
});
toJSON
将您的JS对象转换为正确的JSON字符串。 您也可以使用JSON.stringify
尝试这个:
var scriptURL = "default/scripts/serverside/Scripts.aspx";
$.ajax({
type: "POST",
url: baseURL + scriptURL + "/SaveItem",
data: {sendData: "string to send" }
dataType: "json",
success: function (result) {
de("server result:" +result);
}
});
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.