我只想以这样一种方式验证我的项目中的文本框,以便用户无法输入除字符以外的任何值。
问问题
9789 次
1 回答
2
骇客?方式,$watch 控制器中的 ng-model:
<input type="text" ng-model="myText">
控制器:
$scope.$watch('myText', function() {
// put logic to strip out all non-character characters here
if ($scope.myText ... regex to look for ... ) {
// strip out the non-characters
}
})
最好的方法,在指令中使用 $parser。我不会重复@pkozlowski.opensource 提供的已经很好的答案,所以这里是链接:https ://stackoverflow.com/a/14425022/215945
不要尝试使用 ng-change - 它会导致问题。请参阅AngularJS - 重置 $scope.value 不会更改模板中的值(随机行为)
更新: ng-pattern也可用于定义一个正则表达式,该表达式将限制该字段中允许的内容。另请参阅有关表单的“食谱”页面。
于 2013-02-02T20:24:39.417 回答