var data = {
'ids': $("input[name='ids\\[\\]']").map(function(){return $(this).val();}),
'price': $("input[name='price\\[\\]']").map(function(){return $(this).val();})
};
alert(data);
$.post("api/update_prices.php", {'data[]': data}, function (responseText) {
alert(responseText);
});
...或
$.post("api/update_prices.php", data, function (responseText) {
alert(responseText);
});
警报数据正在输出对象(对象)。我正在寻找Stackoverflow,它仍然无法正常工作。从不调用alert(responseText)。
答案 0 :(得分:1)
您是否尝试在jQuery Ajax API中将内容类型指定为"application/json"
,然后调用
JSON.stringify(数据);
另外,在Google Chrome浏览器中打开Web开发人员控制台,然后导航到“网络”标签,查看Ajax调用期间发生的情况。即发送什么数据以及在Ajax Call中接收哪些数据。
答案 1 :(得分:0)
你试过serialize
吗?它总结了所有表单数据。这似乎是您尝试使用data
对象。
$.post("api/update_prices.php", $(':input').serialize(), function (responseText) {
alert(responseText);
});
答案 2 :(得分:0)
你的$ .post函数应该是这样的:
$.post("api/update_prices.php", {'data[]': JSON.stringify(data)}, function (responseText) {
alert(responseText);
});
注意 JSON.stringify 。