Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/392.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
Javascript jquery select2-获取多重选择的单个id_Javascript_Jquery_Jquery Select2 - Fatal编程技术网

Javascript jquery select2-获取多重选择的单个id

Javascript jquery select2-获取多重选择的单个id,javascript,jquery,jquery-select2,Javascript,Jquery,Jquery Select2,我在ContentFlow类型的图像库中使用select2,我有一个回调,将图像库图像移动到下拉列表中选择的id。当我没有将multiple设置为true时,它工作得很好,但如果设置为true则失败。我希望在获得每个多重选择的个人id方面得到帮助 function format(state) { return "<img class=\"mini\" src=\"" + state.icon + "\"/>" + " " + state.value + "

我在ContentFlow类型的图像库中使用select2,我有一个回调,将图像库图像移动到下拉列表中选择的id。当我没有将multiple设置为true时,它工作得很好,但如果设置为true则失败。我希望在获得每个多重选择的个人id方面得到帮助

    function format(state) {
        return "<img class=\"mini\" src=\"" + state.icon + "\"/>" + " "  +  state.value + "<strong> " + state.keyword + "</strong>";
}
         
$("#select").select2({
        data:function() { return { text:'label', results: data }; },
        formatSelection: format,
    formatResult: format,
    width: 220,
    placeholder:"Search Images",
    escapeMarkup: function(m) { return m; },
    allowClear: true,
    multiple:true
    }).on("change", function(e) {
        var move = $("#select").select2("val");
        cf.moveTo(move);                    
     });
函数格式(状态){
返回“+”+state.value+”“+state.keyword+””;
}
 
$(“#选择”)。选择2({
data:function(){return{text:'label',results:data};},
格式选择:格式,
formatResult:format,
宽度:220,
占位符:“搜索图像”,
转义标记:函数(m){return m;},
allowClear:是的,
多重:对
}).关于(“变更”,职能(e){
var move=$(“#选择”)。选择2(“val”);
cf.moveTo(移动);
});

当multiple设置为true时,val将包含一个逗号分隔的值列表,因此

    var move = $("#select").select2("val").split(",");

现在move将包含一个选定ID的数组。

经过大量实验,以下代码可以正常工作:

$("#select").select2({
        data:function() { return { text:'label', results: data }; },
        formatSelection: format,
    formatResult: format,
    width: 220,
    placeholder:"Search Images",
    escapeMarkup: function(m) { return m; },
    allowClear: true,
    multiple:true
    }).on("change", function(e) {
        var move = $("#select").select2("val");
                    var lastE = move.slice(-1)[0];
        cf.moveTo(lastE);       
     });

我在firebugvar v=$(“#selet”)中得到“split不是函数”;如果(v){var move=v.split(“,”;}或者{…handle empty selection}仍然得到错误,那么v.split不是一个函数。这是可行的:
var move=$(“#选择”).select2(“val”);var lastE=move.slice(-1)[0];cf.moveTo(lastE)