Rus*_*ark 6 jquery jquery-ui autocomplete
我们正在使用JQuery UI Autocomplete,在查询完成后,我在清除包含搜索词的文本框时遇到问题.这是我们的JQuery代码:
$(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;
}
});
});
Run Code Online (Sandbox Code Playgroud)
这段代码在Firefox中工作正常,但是IE 8抛出一个异常并给出一个对话框,询问我是否要使用IE Script Debugger.我看到这个Stack Overflow帖子:在选择jQuery UI Autocomplete之后清除表单字段,它说问题的解决方案是从JQuery选择函数返回false,但这没有帮助.有人建议如何解决这个问题?
Rik*_*Rik 10
使用Jquery 1.5.1和JQuery-ui 1.8.10,以下内容适用于我:
select: function (event, ui) {
event.preventDefault() // <===
window.location.href = ui.item.value;
$(this).val('');
}
Run Code Online (Sandbox Code Playgroud)
我发现解决此问题的唯一方法是使用旧的 JQuery 1.4.1 dll 和新的 JQuery UI dll(版本 1.8.11),我认为版本 1.4.1 之后的 JQuery dll 中存在一个“但是”这个问题。如果是这样,也许未来的版本会修复它。
| 归档时间: |
|
| 查看次数: |
6011 次 |
| 最近记录: |