Я создаю один элемент ввода, и при щелчке на дисплее отобразится список элементов после выбора любого списка элементов.Вручную установите фокус на входном элементе в угловом js
Но фокус не на этом элементе он слезть,
Так что я просто хочу, чтобы вручную установить фокус на элемент ввода, когда список радио кнопки получить шкурку.
Здесь можно использовать следующий код,
Посмотреть
<label class="item item-input item-stacked-label" ng-click="showDays()">
<span class="input-label black-text">DAYS</span>
<span class="input-ctrl">
<input type="text" id="days" readonly ng-model="data_day" focus-on="!daysflag">
</span>
</label>
<div ng-show="daysflag">
<ion-radio icon="ion-ios-checkmark" ng-model="data_day" ng-value="{{day}}" ng-repeat="day in days" ng-click="hideDayFlag()">{{day}}</ion-radio>
</div>
Контроллер
$scope.days = [1, 2, 3, 4, 5, 6, 7];
$scope.showDays = function() {
$scope.daysflag = true;
}
$scope.hideDayFlag = function() {
$scope.daysflag = false;
}
Директива
.directive('focusOn',function($timeout) {
return {
restrict : 'A',
link : function($scope,$element,$attr) {
$scope.$watch($attr.focusOn,function(_focusVal) {
$timeout(function() {
_focusVal ? $element[0].focus() :
$element[0].blur();
});
});
}
}
});
Пожалуйста, помогите мне решить эту проблему.
Спасибо за ваш ответ, но и для моего вопроса он не работает –
у меня есть проблема, когда нг-шоу получить ложное и список получает скрыть то фокус переходит непосредственно на поле –
ввода HTML Для решите свою проблему, вы создаете директиву 'focusOn'. Эта директива не работает! Вы пишете * Так что я просто хочу вручную настроить фокус на элемент ввода, когда список переключателей будет скрыт *. И я это делаю. Вручную установите фокус на элемент ввода. –