diff --git a/src/bootstrap/match.tpl.html b/src/bootstrap/match.tpl.html index 1dc23cd98..cf8bbc638 100644 --- a/src/bootstrap/match.tpl.html +++ b/src/bootstrap/match.tpl.html @@ -1,6 +1,5 @@
-
- + ng-show="$select.searchEnabled && $select.open" + ng-blur="$select.inputBlur()">
diff --git a/src/uiSelectController.js b/src/uiSelectController.js index cbebb0017..66995a2e7 100644 --- a/src/uiSelectController.js +++ b/src/uiSelectController.js @@ -43,6 +43,8 @@ uis.controller('uiSelectCtrl', ctrl.clickTriggeredSelect = false; ctrl.$filter = $filter; ctrl.$element = $element; + ctrl.customValidation = undefined; + ctrl.inputBlur = function () { if (ctrl.customValidation) $scope.$eval(ctrl.customValidation); }; // Use $injector to check for $animate and store a reference to it ctrl.$animate = (function () { diff --git a/src/uiSelectDirective.js b/src/uiSelectDirective.js index cded3d463..67a52a54e 100644 --- a/src/uiSelectDirective.js +++ b/src/uiSelectDirective.js @@ -69,11 +69,17 @@ uis.directive('uiSelect', if(attrs.tabindex){ attrs.$observe('tabindex', function(value) { + $select.tabindex = value; $select.focusInput.attr('tabindex', value); + $select.searchInput.attr('tabindex', value); element.removeAttr('tabindex'); }); } + attrs.$observe('validation', function () { + $select.customValidation = attrs.validation; + }); + scope.$watch(function () { return scope.$eval(attrs.searchEnabled); }, function(newVal) { $select.searchEnabled = newVal !== undefined ? newVal : uiSelectConfig.searchEnabled; });