我有一个发表声明,
$.post("panel.php", 'data=[{"action":"UserInfo"}]', function (userInfo){
//processing
});
我需要将它转换为$ .ajax,因此就这样做了,
$.ajax({
type: "POST",
url: "panel.php",
data: { data: [{"action":"UserInfo"}]},
contentType: "application/json; charset=utf-8",
dataType: "json",
success: function(userInfo) {
//processing
}
});
但是post变量没有被发送。这不是正确的方法吗?
答案 0 :(得分:3)
你可以尝试这样的事情:
$.ajax({
type: "POST",
url: "panel.php",
data: {"action":"UserInfo"},
success: function(userInfo) {
//processing
}
});
答案 1 :(得分:3)
试试这个
$.ajax({
type: "POST",
url: "panel.php",
data: "action="+"UserInfo",
success: function(userInfo) {
//processing
}
});
答案 2 :(得分:1)
从您的data
移除data
并将其保存在变量中,在发送之前将其字符串化,如下所示
var data={"action":"UserInfo"};
$.ajax({
type: "POST",
url: "panel.php",
data: JSON.stringify(data),
contentType: "application/json; charset=utf-8",
dataType: "json",
success: function(userInfo) {
//processing
}
});
答案 3 :(得分:0)
尝试这样,
$.ajax({
type: "POST",
url: "panel.php",
data: {"action":"UserInfo"},
success: function(userInfo) {
}
});
答案 4 :(得分:0)
您的data
属性未写为正确的JSON:
data: { "data": [{"action":"UserInfo"}]},
您需要在JSON对象中的项目周围加引号。您可以使用JSONLint检查您的JSON对象是否有效。
答案 5 :(得分:0)
$.ajax({
type: "POST",
url: "panel.php",
data: {"action":"UserInfo"},
dataType: "json",
success: function(userInfo) {
//processing
}
});
需要一个小小的改变。有一种预定义的格式来发送ajax中的数据,
遵循任何一种方法。