ng-pattern
允许使用以下模式的空格,我无法理解它为什么会这样做。
ng-pattern="/^[a-zA-Z\d\-\_]+$/"
我尝试过没有转义-
和_
,结果是一样的:应用了类ng-valid
和ng-valid-pattern
。
我试图只允许a-z(大写和小写)以及破折号和下划线。这种模式似乎可以像regex101那样期待,所以这很令人困惑。
更新: 在空格后键入有效字符后,文本字段被标记为无效,但空格是第一个字符时则不是: 例如(不像这样硬编码," someText"以及"某些文本"在文本输入中输入):
<input> someText</input> //ng-valid
<input>some text</input> //ng-invalid
仍然很困惑为什么会这样。
答案 0 :(得分:11)
角度自动修剪输入。您可以通过ng-trim =&#34; false&#34;
禁用它<input type="text" ng-model="model" ng-trim="false" ng-pattern="/^[a-zA-Z\d\-\_]+$/"/>