0
我有這樣的jQuery UI的網站http://jqueryui.com/demos/autocomplete/#comboboxjQuery的自動完成功能力變化是使用jQuery提交
$("#mycombobox").combobox();
這基本上是一個輸入文本框,菜單和按鈕組合框例如自動完成文本框。
問題出在aspx頁面上我有mycombobox上面有一個asp:按鈕,當輸入按下時提交表單。
在組合框中$(<input>)
.autocomplete(...)
.keydown(function (e) {
var keyCode = e.keyCode || e.which;
if (keyCode == 13 || keyCode == 108) {
$(this).blur();
return false;
}
return true;
})
的keydown是我阻止其提交的哈克的方式,但它只能得到它的一半。我希望您第一次按Enter鍵以調用自動填充的更改事件,並在第二次輸入時按下表單可以提交。
沒有keydown hack,更改仍然在自動完成上調用,但直到調用提交後才使用舊值。我寧願不這樣做,找到更好的方法。
編輯
如果選擇的東西它有正確的行爲,我怎麼能手動選擇第一個選項時,將顯示菜單嗎?
那難道不工作100%的時間,雖然會,何時會是concidered可見? –
如果沒有選定的項目可能需要輸入以提交,則爲true,因此如果除了可見檢查之外還有一個項目被選中,就可以添加一個檢查項目,如$('。ui-autocomplete')。 .is(':visible')&& $('#ui-active-menuitem')。length> 0' – MikeM
確定即時消息有一半,我編輯了這個問題 –