]> source.dussan.org Git - jquery-ui.git/commitdiff
Autocomplet: refactored handling of menu's selected event.
authorScott González <scott.gonzalez@gmail.com>
Tue, 20 Jul 2010 16:10:58 +0000 (12:10 -0400)
committerScott González <scott.gonzalez@gmail.com>
Tue, 20 Jul 2010 16:10:58 +0000 (12:10 -0400)
ui/jquery.ui.autocomplete.js

index 602d5a545d8ee348d04bad7660a181ca281a46db..7056e07f5587ca8618c0587699fd42feea0e2646 100644 (file)
@@ -123,23 +123,20 @@ $.widget( "ui.autocomplete", {
                                },
                                selected: function( event, ui ) {
                                        var item = ui.item.data( "item.autocomplete" ),
-                                               setValue = false;
-                                       if ( false !== self._trigger( "select", event, { item: item } ) ) {
-                                               // #5639 - if we set the value before setting focus
-                                               // the cursor will move to the beginning of the field in IE
-                                               setValue = true;
-                                       }
-                                       self.close( event );
+                                               previous = self.previous;
+
                                        // only trigger when focus was lost (click on menu)
-                                       var previous = self.previous;
                                        if ( self.element[0] !== doc.activeElement ) {
                                                self.element.focus();
                                                self.previous = previous;
                                        }
-                                       self.selectedItem = item;
-                                       if ( setValue ) {
+
+                                       if ( false !== self._trigger( "select", event, { item: item } ) ) {
                                                self.element.val( item.value );
                                        }
+
+                                       self.close( event );
+                                       self.selectedItem = item;
                                },
                                blur: function( event, ui ) {
                                        if ( self.menu.element.is(":visible") ) {