From: Scott González Date: Fri, 17 Dec 2010 16:15:17 +0000 (-0500) Subject: Autocomplete: Track pending requests and only remove the loading class when the last... X-Git-Tag: 1.9m4~99 X-Git-Url: https://source.dussan.org/?a=commitdiff_plain;h=08422d69da9b916e645aefc1d6996dde24a44788;p=jquery-ui.git Autocomplete: Track pending requests and only remove the loading class when the last request completes. Fixes #6761 - Autocomplete: Loading class removed when multiple Ajax requests occur. --- diff --git a/ui/jquery.ui.autocomplete.js b/ui/jquery.ui.autocomplete.js index 090dd7355..73d50ee6e 100644 --- a/ui/jquery.ui.autocomplete.js +++ b/ui/jquery.ui.autocomplete.js @@ -26,6 +26,9 @@ $.widget( "ui.autocomplete", { }, source: null }, + + pending: 0, + _create: function() { var self = this, doc = this.element[ 0 ].ownerDocument, @@ -289,6 +292,7 @@ $.widget( "ui.autocomplete", { }, _search: function( value ) { + this.pending++; this.element.addClass( "ui-autocomplete-loading" ); this.source( { term: value }, this.response ); @@ -302,7 +306,10 @@ $.widget( "ui.autocomplete", { } else { this.close(); } - this.element.removeClass( "ui-autocomplete-loading" ); + this.pending--; + if ( !this.pending ) { + this.element.removeClass( "ui-autocomplete-loading" ); + } }, close: function( event ) {