我使用最大长度限制我的输入到6个数字。问题是它在6之后就停止了。我认为问题在于我用来分隔输入和最大长度的正则匹配。
<input type="text" ng-keyup="addHyphen($event)" id="sortcode" name="sortcode" maxlength="6" ng-model="data.branchTransitNumber" required numbers-only/>脚本:
$scope.addHyphen = function() {
// $scope.dashed= angular.element($event.target.value);
var ele = document.getElementById('sortcode');
ele = ele.value.split('-').join('');
$scope.data.branchTransitNumber = ele.match(/.{1,2}/g).join('-');
};预期输入: 11-11-11
当前: 11-11-1
我也不会重述任何控制台错误-我认为正则表达式想要放-在两个数字和最大长度后,不允许额外的输入。
编辑
移除最大长度后,its正在工作。但是如何使它与最大长度一起工作呢?
发布于 2020-04-17 05:39:11
@Duck_dragon,maxlength属性用于限制用户输入指定的no。人物形象。这里设置了maxlength="6",这就是为什么它只允许输入框中的6个字符。注意,这里还考虑了计算中的-。
因此,如果您希望允许像11-11-11这样的输入,那么就必须设置maxlength="8"
https://stackoverflow.com/questions/61264688
复制相似问题