From: Scott González Date: Fri, 17 Dec 2010 15:48:17 +0000 (-0500) Subject: Autocomplete: Abort pending ajax requests when disabled and prevent handling results... X-Git-Tag: 1.8.8~8 X-Git-Url: https://source.dussan.org/?a=commitdiff_plain;h=d2a12ff825ebb0e620b25abdbcbaf024881ef537;p=jquery-ui.git Autocomplete: Abort pending ajax requests when disabled and prevent handling results when disabled. Fixes #6752 - Menu may still render when autocomplete is disabled. --- diff --git a/ui/jquery.ui.autocomplete.js b/ui/jquery.ui.autocomplete.js index 95e221035..84d76ec08 100644 --- a/ui/jquery.ui.autocomplete.js +++ b/ui/jquery.ui.autocomplete.js @@ -229,6 +229,9 @@ $.widget( "ui.autocomplete", { if ( key === "appendTo" ) { this.menu.element.appendTo( $( value || "body", this.element[0].ownerDocument )[0] ) } + if ( key === "disabled" && value && this.xhr ) { + this.xhr.abort(); + } }, _initSource: function() { @@ -243,7 +246,7 @@ $.widget( "ui.autocomplete", { } else if ( typeof this.options.source === "string" ) { url = this.options.source; this.source = function( request, response ) { - if (self.xhr) { + if ( self.xhr ) { self.xhr.abort(); } self.xhr = $.ajax({ @@ -294,7 +297,7 @@ $.widget( "ui.autocomplete", { }, _response: function( content ) { - if ( content && content.length ) { + if ( !this.options.disabled && content && content.length ) { content = this._normalize( content ); this._suggest( content ); this._trigger( "open" );