2012-10-27 58 views
5


我正在嘗試編寫允許根據文本框的輸入值填充選擇列表的代碼。

例如:
如果用戶在文本框中輸入牛奶,則選擇列表將包含"full fat", "Skimmed", "1% Milk"

我一直在線,無法找到任何關於如何操作的信息。我設法自動填充一個選擇列表基於從前一個使用jQuery的選擇。但是,我無法找到使用文本框的解決方案。
感謝您檢查我的問題!jQuery填充根據文本輸入的值選擇列表

回答

6

創建一個包含選項數組對象:

selectOptions = { 
    milk: ["full fat", "Skimmed", "1% Milk"] 
} 

在此基礎上,可以追加<option>標籤的<select>onchange事件<textarea>火災:

$('textarea').change(function() { 
    if(selectOptions[$(this).val()]) { // does the selectOptions object have an entry for the value of the textarea? 
     $.each(selectOptions[$(this).val()], function() { // for each array item do 
      $('select').append('<option>' + this + '</option>'); // append an option tag for the array item 
     }); 
    } 
}); 
+0

感謝您的幫助。我試過了,但它似乎不起作用。認爲我在某個地方出錯了。如果我在文本框中輸入牛奶,選擇列表中將填充「全脂」,「脫脂」,「1%牛奶」? – user1779796

+0

如果您取消選擇文本框,則onchange事件會觸發..您還可以使用onkeyup,這會在每次按鍵時觸發。 –

+0

對不起..我沒有測試過我寫的代碼;)我更新了它,現在它工作..看看這裏的測試用例:http://jsfiddle.net/xeVBm/4/ –

相關問題