我們正在使用JQuery UI自動完成,並且在查詢完成後清除包含搜索詞的文本框時出現問題。這裏是我們的jQuery代碼:選擇jQuery UI自動完成後清除表單字段
$(document).ready(function() {
$("form#search input#term").autocomplete({
source: '<%= Url.Action("Display", "Search") %>',
delay: 200,
minLength: 3,
parse: function (data) {
var array = new Array();
for (var i = 0; i < data.length; i++) {
array[array.length] = { data: data[i], value: data[i], result: data[i].link };
}
return array;
},
select: function (event, ui) {
window.location.href = ui.item.value;
$(this).val() = "";
return false;
}
});
});
此代碼工作正常在Firefox,但是IE 8是拋出一個異常,並給出了一個對話框,詢問我是否使用IE腳本調試器。我看到這個堆棧溢出帖子:Clear form field after select for jQuery UI Autocomplete其中說問題的解決方案是從JQuery select函數返回false,但這並沒有幫助。任何人都有如何解決這個問題的建議?
我不相信這是官方的jQueryUI自動完成插件(http://jqueryui.com/demos/autocomplete/),因爲'parse'選項。是這樣嗎?如果是這樣,你的問題應該可能鏈接到正確的插件。 – 2011-03-22 02:37:20
@Andrew,感謝您的評論,但我認爲它是官方的JQueryUI。我們從JQuery UI站點下載了名爲jquery-ui-1.8.5.custom.min.js文件的文件。這個文件有點過時,目前的版本是jquery-ui-1.8.11.custom.min.js,我也下載了它,用最新版本的JQuery嘗試過,然後Autocomplete對我來說不起作用。所有。 – 2011-03-22 12:49:01
好吧,jQueryUI小部件上沒有'parse'選項(據我所知)。您期望從該選項中獲得的功能可能會導致您遇到一些問題(我知道的那種遠射)。 – 2011-03-22 13:37:22