Ich erstelle ein Eingabeelement und beim Klicken zeigen Sie die Liste der Elemente nach dem Auswählen einer beliebigen Objektliste get ausblenden.Manuell den Fokus auf Eingabeelement in Winkel js setzen
Aber der Fokus ist nicht auf dieses Element nach unten raus,
Deshalb möchte ich festgelegt, nur um manuell den Fokus auf Eingabeelement, wenn Liste Radiobutton auszublenden bekommen.
Hier verwenden Sie den folgenden Code,
Ansicht
<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>
-Controller
$scope.days = [1, 2, 3, 4, 5, 6, 7];
$scope.showDays = function() {
$scope.daysflag = true;
}
$scope.hideDayFlag = function() {
$scope.daysflag = false;
}
Richtlinie
.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();
});
});
}
}
});
Bitte helfen Sie mir, dieses Problem zu lösen.
Vielen Dank für Ihre Antwort, aber für die mein Problem arbeitet sich nicht –
i Problem haben, wenn ng-Show falsch erhalten und eine Liste bekommen verstecken dann geht konzentrieren, um direkt auf HTML-Eingabefeld –
um Lösen Sie Ihr Problem, erstellen Sie die Anweisung 'focusOn'. Diese Direktive funktioniert nicht! Du schreibst * Also möchte ich nur den Fokus auf das Eingabeelement setzen, wenn die Radio Button Liste ausgeblendet wird *. Und ich mache es. Setzen Sie den Fokus manuell auf das Eingabeelement. –