У меня есть новый виджет автозаполнения в jQuery UI 1.8rc3, отлично работающий в Firefox. Это не работает вообще в IE. Кто-нибудь может мне помочь?jQuery UI autocomplete не работает в IE
HTML:
<input type="text" id="ctrSearch" size="30">
<input type="hidden" id="ctrId">
Javascript:
$("#ctrSearch").autocomplete({
source: "ctrSearch.do",
minLength: 3,
focus: function(event, ui){
$('#ctrSearch').val(ui.item.ctrLastName + ", " + ui.item.ctrFirstName);
return false;
},
select: function(event, ui){
$('#ctrId').val(ui.item.ctrId);
return false;
}
});
Результат (IE 8):
Красная коробка является <ul>
элемент, созданный JQuery.
http://i40.tinypic.com/6q9quu.jpg
Я также получаю эту ошибку:
Line: 116 Error: Invalid argument.
Когда я открываю его в сценарий отладчик IE8, он выделяет f[b]=d
на линии 116 jquery.min.js. Обратите внимание, что я использую версию 1.4.2 jQuery, размещенную на серверах Google (https://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js).
Я попытался удалить некоторые параметры, но даже когда я звоню .autocomplete()
без параметров или только с исходным кодом, я все равно получаю тот же результат.
Еще раз, он работает в Firefox, но не в IE. Какие-либо предложения?
Спасибо.
UPDATE: Как и было предложено, я использовал jquery.js (вместо jquery.min.js) и получил ошибку в строке 4618. См. Ответ jitter ниже. Пожалуйста, см. this other Stack Overflow question, который был опубликован несколько дней назад.
UPDATE 2: я обнаружил, что JQuery UI автозаполнения использует недействительный свойство this.element.height
, когда он должен использовать функцию this.element.height()
Питер. Не используйте мини-версию jQuery для отладки. Вероятнее всего, будет больше информации, чем «f [b] = d в строке 116 jquery.min.js», если вы замените вместо jQuery.js. – spender
спрей правый. При разработке свопинга с измененной версией по сравнению с полномасштабным jQuery http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.js, чтобы получить более точную информацию об отладке – jitter
Если я найду время, я мог бы изучить это завтра. У меня нет IE8 прямо сейчас – jitter