【发布时间】:2014-10-04 20:05:57
【问题描述】:
我有一个表格,其中第一列由复选框组成。我想用 jquery 收集检查行的值并将它们传输到 aphp 函数进行处理。
到目前为止我有:
var searchIDs = $('input:checked').map(function(){
return $(this).val();
});
它返回一个包含检查值的对象。
我可以使用以下方法获取这些列表:
searchIDs.get()
形式:
1,2,3 等
现在我需要将它发送到 php.ini。我试过了:
$.ajax({
type: "POST",
url: "update/updateR",
contentType: 'application/json',
data: searchIDs.get() ,
contentType: 'application/json',
dataType: 'json',
success: function(){
alert("OK");
}
});
但是在我的 php 函数中,它包括:
$json = $_POST['json'];
var_dump($json);
exit;
我收到以下错误:
<p>Message: Undefined index: json</p>
我做错了什么?
附录:
我把ajax改成
$.ajax({
type: "POST",
url: "update/updateR",
contentType: 'application/json',
data:{ searchIDs : searchIDs.get() },
dataType: 'json',
success: function(){
alert("OK");
}
});
但我得到了同样的错误,并且 php 方法中的 var_dump 给出了 NULL
【问题讨论】:
-
首先,
var_dump($_POST)查看实际发送的内容。如果要指定要发送的json属性,则需要从 jQuery 发送一个对象:data: { json: searchIDs.get() } -
PHP 要求您以
key=value格式发送数据,以便使用 with 填充 $_POST/$_GET。您实际上只发送value,所以PHP 没有什么要处理的。尝试data: {foo: searchIDs.get()}然后$_POST['foo']
标签: javascript php jquery ajax