2010-09-16 1 views
2

Есть ли способ, чтобы остановить пользовательский интерфейс JQuery автозаполнения, если пользователь покидает страницу, глядя на Documentation here я вижу много вещейОтмена автозаполнения после того как я покинул поле

.autocomplete("destroy") 
.autocomplete("disable") 
.autocomplete("close") 

но как я использую их после того, как пользователь покидает поле

$("#request_song").autocomplete({ 
    source: function(req, add){ 
    $.getJSON('<%= ajax_path("trackName") %>', req, function(data) { 
     var suggestions = data.suggestions; 
     add(suggestions); 
    }); 
    }, 
    change: function() { 
    var main = $('#main_content'); 
    main.empty().append("<img id=\"throbber\" src='/pre_config/css/images/throbber.gif' alt='Loading. Please wait.' />"); 
    $("#band_events").load("/load_events/"+ escape($('#request_artist').val()), successCallback); 
    }, 
}); 

ответ

6

Bind обработчик события blur к полю (по сути, потерял фокус события):

$("#request_song").blur(function(){ 
    // Using disable and close after destroy is redundant; just use destroy 
    $(this).autocomplete("destroy"); 
}); 
+0

Могу ли я добавить два селектора одновременно, например $ ("# request_song", "#request_artist"). Blur (function() { – Trace

+2

Вы были близки: '$ (" # request_song, #request_artist "). Blur (функция() { ' –

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