我正在使用Ionic Angularjs,并希望在输入类型文本中键入3个字符后,将焦点设置为下一个输入。
我可以使用limitTo
过滤器与其他angularjs功能组合吗?
答案 0 :(得分:1)
为此,您可以使用AngularJS指令,结合HTML5的输入maxlength
属性:
指令
angular.module('myApp', [])
.directive('focusAfter', function() {
return {
restrict: 'A',
scope: {
elemToFocus: '@'
},
link: function(scope, elem, attrs) {
var elementToFocus = document.getElementById(scope.elemToFocus);
elem.on('keyup', function() {
if(elem.val().length === 3) {
window.setTimeout(function() {
elementToFocus.focus();
});
}
});
}
};
});
查看强>
<input type="text" maxlength="3" id="input1" focus-after elem-to-focus="input2">
<input type="text" maxlength="3" id="input2" focus-after elem-to-focus="input3">
<input type="text" maxlength="3" id="input3" focus-after elem-to-focus="input1">