使用jQuery从select2小部件和存储中获取多个值,然后重新加载它们

时间:2014-02-06 20:25:03

标签: javascript jquery jquery-select2

“Select2” 表示: http://ivaynberg.github.io/select2/

现在,我的问题是:我有select2小部件的硬编码源,例如:

<select>
    <option value = "1">A</option>
    <option value = "2">B</option>
    <option value = "3">C</option>
</select>

然后,当我选择A和B两个选项时,使用:

var result = $("#id").select2("val"); 

我可以得到的结果等于A,B。 接下来当我想重新加载结果时:

$("#id").select2("val", result);

它无法成功,因为小部件无法分开,它们是两个不同的选项。

如何解决该问题,无法使用split(",")命令,因为某些选项可能有逗号。

1 个答案:

答案 0 :(得分:0)

好的,让我们做点什么,我只是在小提琴上创建了一个样本,我们就可以开展工作,这样你就可以做你需要的了。

到目前为止,这是我能做到的,您可以在顶部选择2选择多个项目,然后按一个按钮,获取所选项目,然后在不同的select2上选择完全相同的项目(值中包含逗号)。这几乎就是你想要做的(保存和恢复)。

小提琴在http://jsfiddle.net/5P9Zc/

$(".mimicValues").click(function() {
    var test = $(".origin").val();
    // Save the values into TEST
    $(".origin").val().forEach(function(entry) {
    console.log(entry);
});
   alert(test);
   // Restore the values in TEST
   $(".mimic").val(test);
});

另外,请注意您正在使用的select2版本,对其较新版本有一些增强功能。