微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

使用AngularJS和Pattern / RegEx进行验证

所以我有一个类型编号的输入,我想确保它只接受一个数字.我可以在服务器端做到这一点,但是使用AngularJS我无法让它工作.

这是代码

<input type="number" ng-pattern="/[0-9]+/" name="numOfFruits" ng-model="basket.numOfFruits" />

我怀疑这与我提供的模式有关[0-9]基本上我只想在这个文本框中输入数字,任何不是由0到9组成的数字,我希望输入无效.

目前,我的输入字段将此aa23423视为有效输入!!

任何帮助将不胜感激.

谢谢.

解决方法

你需要使用锚点:

/^[0-9]+$/

> ^:开始线锚.
> [0-9] 0到9之间的一个或多个数字.
> $:行尾锚点.

因此,这匹配字符串的开头,然后匹配一个或多个数字,之后它查找字符串结尾,因此它匹配仅包含数字的字符串,而不匹配任何其他字符串.

否则,/ [0-9] /将仅匹配aa23423的一部分,更准确地说是数字23423,因此将使您有效.

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐