JQuery выпадающий список автозаполнения допустимых значений не работает на IE9 - PullRequest
1 голос
/ 16 января 2012

Следуя информации, которую я нашел по другому вопросу SO, я улучшил автозаполнение, чтобы отображать список доступных значений, когда поле получает фокус. Это прекрасно работает в Firefox и Chrome, но не в IE9.

Я создал пример кода здесь . Он работает, если вы открываете его в Firefox или Chrome, но не работает, если вы открываете его в IE9. Почему?

У кого-нибудь есть решение этой проблемы?

UPDATE

Description of the issue

Изображение выше для FireFox. Список доступных значений отображается, когда в поле установлен курсор. Этот список не отображается при использовании IE9.

Ответы [ 2 ]

1 голос
/ 18 января 2012

ваше if условие должно нравиться, используйте == вместо ===

if (this.value == "") {
    $(this).autocomplete("search", "");
}

== равно (только значения)

=== точно равно (значение и тип)


EDIT

Просто прокомментируйте console.log(this.value);, тогда он будет работать.

http://jsfiddle.net/PEhdP/4/

0 голосов
/ 18 января 2012

$(function() { var cache = {}, lastXhr; $( "#birds" ).autocomplete({ minLength: 2, source: function( request, response ) { var term = request.term; if ( term in cache ) { response( cache[ term ] ); return; } lastXhr = $.getJSON( "search.php", request, function( data, status, xhr ) { cache[ term ] = data; if ( xhr === lastXhr ) { response( data ); } }); } }); });

// Пожалуйста, попробуйте этот

...