2011-10-10 50 views
10

現在我在文本框中添加了自動填充小部件。理想情況下,這將是一個選擇框,但我不知道如何讓某人鍵入一個選擇框。如何使用jQuery自動完成的選擇框?

所以我降級到有一個文本框和一個隱藏的框。隱藏框應該更新爲顯示在文本框中的ID。

我對jQuery來說很新,至少在像這樣的深度級別。我是否比我需要更難?我絕對需要自動完成,因爲可能有數十萬個可能的值。

回答

9

對於自動完成,jQueryUI演示頁上有這樣的a great example。它實際上使用select元素作爲後備存儲。

您可以輕鬆修改此選項以使用遠程數據源。如果你需要遠程源代碼,請告訴我,我可以提供一個例子。

+1

請注意,該示例明確指出「這不是一個支持的或者甚至完整的小部件,它純粹是爲了演示自動完成可以用一些定製做什麼」,可能會有一些問題(並且我有一些它:() – Andrea

17

你應該看看名爲chosen的jQuery插件。
我認爲這是過去一年(或更多)編寫的最好的jQuery插件。

Chosen是一個JavaScript插件,它使得長而笨重的選擇框變得更加用戶友好。它目前可用於jQuery和Prototype風格。

+0

哇。 Aaaaand ...我完成了。驚人!!!謝謝! – AKWF

+0

這應該是可以接受的答案。 – user3117628

+0

@ user3227070 - 當時,這是最好的。但是'select2'已經取代了它。 –

16

有一個非常好的選擇「選擇」 - "Select2" (jQuery only)

「選擇二」 的用例

  • 加強與搜索本地選擇。
  • 使用更好的多選接口增強本地選擇。
  • 從JavaScript加載數據:通過ajax輕鬆加載項目並讓它們可供搜索。
  • 嵌套optgroups:native選擇只支持一層嵌套。 Select2沒有這個限制。
  • 標記:能夠即時添加新物品。
  • 使用大型遠程數據集:根據搜索詞部分加載數據集的能力。
  • 大數據集的分頁:當結果滾動到結尾時,輕鬆支持加載更多頁面。
  • 模板:支持自定義渲染結果和選擇。