Jquery select2 -获取多个选择的单个id

jquery select2 - getting the individual id of a multiple selection

本文关键字:选择 单个 id select2 获取 Jquery      更新时间:2023-09-26

我在一个内容流类型的图库中使用select2,我有一个回调,将图库图像移动到下拉菜单中选择的id。它工作得很好,当我不设置多个为真,但失败,如果为真。我希望在获得每个多重选择的个人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);                    
     });

经过多次试验,下面的代码可以工作了:

$("#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);       
     });

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

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

now move将包含一个选定id的数组

这些值是一个数组,你可以这样使用:

var values = $("#select").select2("val").join(",");