使用Knockout.js标记对Select2的支持

时间:2012-10-07 15:20:35

标签: knockout.js jquery-select2

在尝试将Knockout.jsSelect2进行整合时,我注意到the usual way似乎tagging support似乎没有a jsFiddle

jsFiddle example说明了基本支持,但是如何将此扩展到Select2的标记支持并不明显。

我已将此简化为更简洁的 {{3}} ,以期会形成解决方案的基础。

我很感激有关如何使用Knockout.js获取Select2标记支持的想法和建议。

注意:我不和Select2结婚,但我认为这很棒。但是,如果有一个标记支持的替代建议适用于Knockout.js,我会非常有兴趣听到它。话虽如此,我认为解决Select2问题会非常有趣。

2 个答案:

答案 0 :(得分:3)

如您所述,标记功能不适用于<select>个元素。那是因为它允许用户添加不在列表中的标签。您可以在字段中键入任何内容并按Enter键,并将其添加到值中。

以下是一个工作示例:http://jsfiddle.net/mbest/6XvqX/41/

主要变化:

  1. 可用项目列表通过tags选项直接传递给Select2。
  2. 使用value绑定代替selectedOptions,因为后者仅适用于<select>元素。
  3. 计算用于将所选项目作为数组。

答案 1 :(得分:1)

我用更新版本的knockout.js更新了小提琴手,因为我无法通过上面的例子来解决问题。这个可以解决问题:http://jsfiddle.net/6XvqX/424/

(no change to the code itself)

无论如何,感谢Michael提供的解决方案。 :)