从复选框中收集值:
var filtersArray = $("input[@name='filters']:checked").map(function(i,n){
return $(n).val();
}).get();
发布到php文件
$.post("php/performSearch.php", {
keywords: $('#keywords').val(),
'filters[]': filtersArray},
function(data){
//alert(data);
});
无论我做什么,Php都不会得到阵列 我有:
$postedKeywords = $_POST['keywords'];
$postedFilters = $_POST['filters[]'];
关键字已过帐,过滤器[]未过帐。我试过print_r ....没有结果..
我试过了:
foreach($_POST as $val)
echo $val;
我得到了$ _POST ['keywords']和$ _POST ['filters']的数组所以它被发送了但是由于某种原因我不能使用这些值。
答案 0 :(得分:2)
你试过了吗?
$.post(
'php/performSearch.php', {
keywords: $('#keywords').val(),
filters: filtersArray
},
function(data) {
}
);
这将发送一个可能如下所示的POST请求:
filters[]=1&filters[]=2
答案 1 :(得分:0)
使用此:
$.post("php/performSearch.php", {
keywords: $('#keywords').val(),
'filters\[\]': filtersArray},
function(data){
//alert(data);
});
或者尝试一下:
$.post("php/performSearch.php", {
keywords: $('#keywords').val(),
filters: filtersArray},
function(data){
//alert(data);
});
要进入php,请不要使用[]
,只需使用:
$postedKeywords = $_POST['keywords'];
$postedFilters = $_POST['filters'];