2012-10-07 66 views
2

在试图集成Knockout.jsSelect2,我注意到似乎是the usual way做的似乎没有tagging support标记支持Select2与Knockout.js

a jsFiddle说明了基本的支持,但不明白如何将其扩展到Select2的标记支持。

我已将此简化为更简洁的jsFiddle example人们所期望的将构成解决方案的基础。

对于如何通过Knockout.js获得对Select2标记支持的想法和建议,我将不胜感激。我不认为Select2,虽然我觉得它很棒。但是,如果对Knockout.js有效的标记支持有其他建议,我会很有兴趣听到它。话虽如此,我认为,对Select2问题的解决方案将是相当有趣的。

+0

顺便说一句,“通常情况下”的所有示例似乎都是''。这稍微修改了分析。我会发布任何进展。 –

回答

3

标记功能不能与您注意到的<select>元素一起使用。这是因为它允许用户添加不在列表中的标签。您可以在该字段中输入任何内容并按下回车键,然后将其添加到该值中。

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

主要变化:

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

我已经用更新版本的knockout.js更新了提琴手,因为我无法获得上述示例的工作。这一个诀窍:http://jsfiddle.net/6XvqX/424/

(no change to the code itself) 

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