2012-10-07 88 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) 

無論如何,感謝邁克爾提供的解決方案。 :)