Angular ngModelOptions allowInvalid不起作用

时间:2015-06-06 13:53:32

标签: javascript angularjs validation

我有这样的代码,我在其中设置选项{allowInvalid: true}

<input type="number" name="userName"
         ng-model="user.name"
         ng-model-options="{ allowInvalid: true }"
         ng-blur="test(user)"/>

当我将非数字值输入非数字时,例如:abc
为什么user.name仍然更改为undefined? 我期望模型user.name应该是'abc'

完整代码:http://plnkr.co/edit/BsLk2GWVkchNgKaOV453?p=preview 我正在使用angular v1.3.16

1 个答案:

答案 0 :(得分:10)

link之后,您无法将allowInvalidtype="number"属性一起使用。

  

HTML5约束验证问题

     

the HTML5 specification后面的浏览器中,input[number]无法按预期与ngModelOptions.allowInvalid一起使用。如果在输入中输入了非数字,则浏览器会将该值报告为空字符串,这意味着ngModel中的视图/模型值以及随后的范围值也将是空字符串。