0

我在 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);                    
     });
4

2 回答 2

1

经过大量实验,以下代码有效:

$("#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);       
     });
于 2013-06-04T01:38:07.360 回答
0

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

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

现在 move 将包含一组选定的 id。

于 2013-05-30T17:25:18.810 回答