我想创建一个输入掩码。角度输入掩码只能禁用数字
我想要删除和箭头键功能以及除1 2 3 4 5之外的所有其他键。我使用1,2,3,4,5,6作为热键用于计划应用程序。是否有可能创建一个只禁用数字1-6的掩码?
<input pattern="regex"> <!-- not working because it only fires after submit -->
我想创建一个输入掩码。角度输入掩码只能禁用数字
我想要删除和箭头键功能以及除1 2 3 4 5之外的所有其他键。我使用1,2,3,4,5,6作为热键用于计划应用程序。是否有可能创建一个只禁用数字1-6的掩码?
<input pattern="regex"> <!-- not working because it only fires after submit -->
<input type="text" ng-keypress="keyPressed($event)">
在控制器
function MyCtrl($scope){
$scope.keyPressed = function(e) {
if (e.keyCode >= 49 && e.keyCode <= 54) {
event.preventDefault();
} else {
// do your logic
}
}
}
你可以用ng-pattern
属性做的,但它允许的字符并做验证,但您的要求是禁用的字符。
谢谢!出于某种原因,这也禁用了ABCDEF(字母的前6个字母) –
(e.keyCode> = 97 && e.keyCode <= 102)由于某种原因导致了ABCDEF错误 –
a = 97 b = 98 根据http://www.expandinghead.net/keycode.html,c = 99 d = 100 e = 101 f = 102 。不知何故,这些键码打破它。我想没有支持数字键盘。 –
可以使用角度ng-pattern
来实现这一目标:
<input type="text" ng-model="check" name="check" ng-pattern="/^[^1-6.]*$/">
<small class="error" ng-show="exampleForm.check.$error.pattern">Invalid pattern.</small>
动态检查无效键进入不上提交。
我不是这方面的专家,但我试过了,我认为它只是在点击提交按钮后才开始。无论如何谢谢你的帮助:) –
谁告诉它只适用于提交?你也可以在变化上做到这一点。 – SaiUnique
https://github.com/angular-ui/ui-mask –
ng-keypress是我所需要的。谢谢:) –