这里我有一个文本框。在该字段中,有一个验证只需要允许数字、字母和西类牙语字符。为此,我在 javascript 中找到了一个函数。该功能在ng-keypress中,我想将其更改为ng-change。如果我改变,函数不会触发。
如何将函数更改为 ng-change。
JSP代码:-
<input type="text" ng-model="name" ng-keypress="getPatternForAlphebet($event,$index)">
脚本代码:-
$scope.getPatternForAlphebet = function(event,rowIndex){
var key = key || event.which;
if($scope.documentTypeNumber==1 || $scope.documentTypeNumber ==2){
if ((key > 64 && key < 91)|| (key > 159 && key < 166) || (key > 96 && key < 123) || (key == 165) ||(key == 32)
|| (key == 164) || (key == 130) || (key == 181) || (key == 144) || (key == 214) ||
(key == 224) ||(key == 233) || (key == 8) || (key == 241) || (key == 209)) {
}else{
event.preventDefault();
}
}else if($scope.documentTypeNumber==6){
if ((key > 64 && key < 91)|| (key > 159 && key < 166) || (key > 96 && key < 123) || (key == 165) ||(key == 32) ||
(key == 59) || (key == 164) || (key == 58) || (key == 46) || (key == 44) || (key == 38) ||
(key == 34) || (key == 130) || (key == 181) || (key == 144) || (key == 214) ||
(key == 224) ||(key == 233) || (key == 8) || (key == 241) || (key == 209)) {
}else{
event.preventDefault();
}
}
};
最佳答案
ng-change
必须与 ng-model
一起使用。因此,将 ng-model
添加到输入字段。
阅读更多关于 ng-change
here
编辑:
正如 Alexis Toby 所说,ng-change
没有 $event
。去掉它。它会起作用。
关于javascript - 如何将 ng-keypress 更改为 ng-change 功能,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44537376/