作者:当官的好办事_625 | 来源:互联网 | 2023-05-22 15:04
我的控制器中有一个对象变量(var myObject),在IHM中分为3个输入文本.
我想在焦点到达maxLength时自动将焦点更改为下一个输入.
var myObject = {
part1:"",
part2:"",
part3:""
}
CodingIntrig..
12
你需要使用一个指令:
app.directive("moveNextOnMaxlength", function() {
return {
restrict: "A",
link: function($scope, element) {
element.on("input", function(e) {
if(element.val().length == element.attr("maxlength")) {
var $nextElement = element.next();
if($nextElement.length) {
$nextElement[0].focus();
}
}
});
}
}
});
并按如下方式更新您的表单:
演示
您可以将指令移动到
元素上,但build-int jqLite的find()
方法将限制您仅按标记名称查找元素.如果你正在使用完整的jQuery,或者可以使用vanillaJS,我建议使用这种方法.
1> CodingIntrig..:
你需要使用一个指令:
app.directive("moveNextOnMaxlength", function() {
return {
restrict: "A",
link: function($scope, element) {
element.on("input", function(e) {
if(element.val().length == element.attr("maxlength")) {
var $nextElement = element.next();
if($nextElement.length) {
$nextElement[0].focus();
}
}
});
}
}
});
并按如下方式更新您的表单:
演示
您可以将指令移动到
元素上,但build-int jqLite的find()
方法将限制您仅按标记名称查找元素.如果你正在使用完整的jQuery,或者可以使用vanillaJS,我建议使用这种方法.
@CodingIntrigue由于这个原因,我没有为我工作:'使用严格'; 还是非常感谢.;)