diff --git a/ui/jquery.ui.autocomplete.js b/ui/jquery.ui.autocomplete.js index 6cdbb4db7b3..1ded2539663 100644 --- a/ui/jquery.ui.autocomplete.js +++ b/ui/jquery.ui.autocomplete.js @@ -28,7 +28,8 @@ $.widget( "ui.autocomplete", { }, _create: function() { var self = this, - doc = this.element[ 0 ].ownerDocument; + doc = this.element[ 0 ].ownerDocument, + suppressKeyPress = false; this.element .addClass( "ui-autocomplete-input" ) .attr( "autocomplete", "off" ) @@ -43,6 +44,7 @@ $.widget( "ui.autocomplete", { return; } + suppressKeyPress = false; var keyCode = $.ui.keyCode; switch( event.keyCode ) { case keyCode.PAGE_UP: @@ -65,6 +67,7 @@ $.widget( "ui.autocomplete", { case keyCode.NUMPAD_ENTER: // when menu is open or has focus if ( self.menu.element.is( ":visible" ) ) { + suppressKeyPress = true; event.preventDefault(); } //passthrough - ENTER and TAB both select the current element @@ -91,6 +94,12 @@ $.widget( "ui.autocomplete", { break; } }) + .bind( "keypress.autocomplete", function(event) { + if(suppressKeyPress) { + suppressKeyPress = false; + event.preventDefault(); + } + }) .bind( "focus.autocomplete", function() { if ( self.options.disabled ) { return;