2012-02-20 5 views
1

Я пытаюсь написать сценарий, который должен знать, содержит ли раскрывающийся список автозаполнения любые результаты. Это то, что я сейчас имею, но по какой-то причине IF не работает (т. Е. Код внутри не запускается).Обнаружить, если у jQuery autocomplete есть результаты

if($("ul.ui-autocomplete li").length == 0){ 
    $('div#autocomplete').replaceWith('<h2>' + $(this).val() + '</h2>'); 
    return false; 
} 

Похоже, что все еще есть результаты, они просто скрыты. Итак, как я могу увидеть, есть ли результаты или отображается ли раскрывающийся список автозаполнения?

+1

возможно дубликат [не Детектирование никаких результатов на JQuery UI автозаполнения] (http://stackoverflow.com/questions/4718968/detecting-no-results-on-jquery-ui-autocomplete) –

+0

Вы правы , это сработало! – Adam

ответ

-2
//in the open event: 
open: function(event,ui){ 
    var len = $('.ui-autocomplete > li').length; 
    console.log(len < 1); 
} 
+1

-1: 'open' не вызывается, когда нет результатов: http://jsfiddle.net/VyAhU/. Фактически, только чтение документов для автозаполнения показало бы это. –

Смежные вопросы