我只想验证我的项目中的文本框,以便用户不能输入字符以外的任何值。只允许使用AngularJs的文本框中的字符
回答
Hackish?方式,$看NG-模型在你的控制器:
<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
}
})
的最佳方式,在指令使用$解析器。 我不会重复@ pkozlowski.opensource提供的已经很好的答案,所以这里是链接:https://stackoverflow.com/a/14425022/215945
不要尝试使用ng-change - 它会导致问题。见AngularJS - reset of $scope.value doesn't change value in template (random behavior)
更新: ng-pattern也可用于定义一个正则表达式,这将限制什么是允许的领域。另见"cookbook" page about forms。
看来你不明白我的问题。我希望该用户在文本框中输入除字符以外的任何值。所以我认为在这里我们必须使用onkeypress函数。你说什么? – user2013463
我相信我提供的两种解决方案应该可以工作。我只是用关于ng-pattern的信息更新了我的答案。如果您无法使用以上三种解决方案中的任何一种解决问题,请发布[小提琴](http://pkozlowskios.wordpress.com/2012/08/12/using-jsfiddle-with-angularjs/)或[plnkr](http://plnkr.co/edit/)你尝试过。 –
我已经使用了ng-pattern用于这个目的,它为我提供了很好的验证目的,但实际上现在我想让用户甚至不能在文本框中输入任何字符以外的东西。你能帮我解决吗? – user2013463
- 1. 如何只允许angularjs中的文本框中的数字?
- 2. 文本框只允许使用字母
- 3. AngularJS问题只允许将数字输入到文本框中
- 4. 只允许文本框中的特定字符
- 5. 只允许在文本框中使用字母字符的模型验证
- 6. 只允许在文本框中使用英文字符的正则表达式
- 7. 只允许文本框中的整数
- 8. 如何只允许使用JS的文本框中的所有特殊字符?
- 9. 如何只允许日文字符在文本框中
- 10. 文本框掩码只允许数字
- 11. 只允许在文本框C#数字
- 12. 允许只有字母数字在文本框使用jQuery
- 13. 格式c#文本框只允许数字字符
- 14. 只允许GWT中的文本框中的数字?
- 15. AngularJs输入文本框只允许大于零的值
- 16. 输入文本框字段只允许字符不允许数字,但允许空间?
- 17. 只允许在asp.net中的文本框中输入字母字符
- 18. 当我们只允许使用java脚本的文本框中的数字时允许tab键
- 19. 只允许在文本框中使用字母,数字和正斜杠的JQuery
- 20. 只允许使用C#.Net的拖放文本框中的文本文件
- 21. 只允许文本框中的数字值
- 22. 只允许文本框中的数字值?
- 23. 如何只允许文本框中的十进制数字
- 24. JQuery只允许使用键码的文本框中的数字输入
- 25. 如何只允许使用jQuery或JavaScript的文本框中的阿拉伯文,数字和特殊字符?
- 26. 允许在文本框中使用HTML
- 27. 只允许数字字符
- 28. 只允许使用menuitem快捷方式的文本框
- 29. 文本框只允许浮点数
- 30. 如何仅允许使用jquery.validate的文本框中的文本?
http://stackoverflow.com/questions/15554915/angular-directive-ignore-non-numeric-input –