Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/81.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 将数组作为参数传递给Select2_Php_Jquery_Jquery Select2 - Fatal编程技术网

Php 将数组作为参数传递给Select2

Php 将数组作为参数传递给Select2,php,jquery,jquery-select2,Php,Jquery,Jquery Select2,我试图将checkbox checked放入一个数组(checkBoxArray),并使用select2jquery插件通过ajax将其发送到我的php请求文件。 但是过滤器值始终为空 //Here the checkBox array $('.chkfilters').on("change", function() { var checkBoxArray = $('.chkfilters:checked').map(function(i,n) { return $(n)

我试图将checkbox checked放入一个数组(checkBoxArray),并使用select2jquery插件通过ajax将其发送到我的php请求文件。 但是过滤器值始终为空

//Here the checkBox array
$('.chkfilters').on("change", function() {
    var checkBoxArray = $('.chkfilters:checked').map(function(i,n) {
        return $(n).val();
    }).get(); //get converts it to an array
});

// Here the Select2 plugin
$(".searchInput").select2({
    placeholder: "Rechercher un article, une référence...",
    minimumInputLength: 3,
    ajax: {
        url: "/suggest",
        dataType: 'JSONP',
        type: 'GET',
        data: function (term, page, checkBoxArray) {
            return {
                q: term,
                page_limit: 10,
                page: page,
                filter : checkBoxArray
            };
        },
        results: function (data, page) {
            var more = (page * 10) < data.total;
            return {
                results: data.articles,
                more: more
            };
        }
    },
    createSearchChoice: function(term, checkBoxArray) {
        return {
                text:term,
                tform:'/recherche',
                filter : checkBoxArray
         };
    },

    ...

});
//这里是复选框数组
$('.chkfilters')。打开(“更改”,函数(){
var checkBoxArray=$('.chkfilters:checked').map(函数(i,n){
返回$(n.val();
}).get();//get将其转换为数组
});
//这里是Select2插件
$(“.searchInput”)。选择2({
占位符:“Rechercher联合国文章,法国……”,
最小输入长度:3,
阿贾克斯:{
url:“/建议”,
数据类型:“JSONP”,
键入:“GET”,
数据:函数(术语、页面、复选框数组){
返回{
问:任期,
页数限制:10页,
第页:第页,
过滤器:checkBoxArray
};
},
结果:功能(数据、页面){
var more=(第10页)
我的项目中的代码。它的工作原理是:

$('.lstProgramStoplistId')。选择2({
阿贾克斯:{
网址:programsUrl,
数据类型:“json”,
contentType:'应用程序/json',
键入:“POST”,
延误:250,
数据:函数(参数){
var lstProgramCategoryId=$('.lstProgramCategoryId')。选择2('val');
返回JSON.stringify({
str:params.term,
lstProgramCategoryId:lstProgramCategoryId
});
},
processResults:函数(数据、参数){
返回{
结果:数据项
};
},
缓存:false
},
最小输入长度:2
});

您只是想获取复选框吗?不仅仅是。我也在尝试通过Select2函数发送阵列。复选框在表单之外。您是否尝试过序列化?查看
$('.chkfilters').serialize()返回的内容@阿达默里菲尔德Thx寻求帮助。是的,这听起来是个不错的起点,但你能帮我找到方法吗?