javascript - 更新模型甚至不满足验证

标签 javascript angularjs validation angular-ngmodel

即使 ng-minlengthng-maxlength 等验证失败,我也想更新我的模型。

我有一个场景可以切换包含具有相同数据的相似表单的选项卡。因此,当我切换它时,如果输入有效(适当的长度和模式),另一种形式的其他字段会保留数据。

但如果输入值无效,则模型不会更新,因此不会保留字段值。

有没有办法在 AngularJS 中解决这个问题? 提前致谢。

<form name="myForm" ng-submit="count = count + 1" ng-init="count=0" ng-app>
<div class="control-group" ng-class="{error: myForm.mobile.$invalid}">
  <label class="control-label" for="mobile">Mobile</label>
  <div class="controls">
      <input type="text" name="mobile" placeholder="XXXXXXXXXXX" ng-model="mobile" ng-minlength="11"  required/>
      <span ng-show="myForm.mobile.$error.required" class="help-inline">Required</span>
      <span ng-show="myForm.mobile.$error.minlength" class="help-inline">Mobile number should be minimum 11 character</span>           
  </div>
</div>

<div class="control-group">
  <div class="controls">                       
    <input  class="btn" type="submit" value ="submit" />
  </div>
  <tt>mobile = {{mobile}}</tt><br/>
</div>
</form>

JS Fiddle

正如您在 fiddle 中看到的那样,在 min-length 满足之前,移动设备不会更新。

最佳答案

如果模型中设置了任何无效标志,则

angular 不会对 scope$modelValue 应用任何更改。当您开始验证过程时,您正在设置 minlength="11" 。这告诉 Angular 除非值大于 10,否则不要将值应用于模型。所以,我想除非验证为真,否则无法更新模型值。

关于javascript - 更新模型甚至不满足验证,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34585128/

相关文章:

validation - TYPO3/Extbase - 如何在验证/保存对象之前修剪值?

jquery - 验证 MVC 表单中的复选框

javascript - 根据窗口大小显示div数量

javascript - 如何使用 jQuery 或 JavaScript 动态获取 JSON 数组键和值

javascript - 如何重构这个要排序的对象表?

jquery - 使用 jQuery 比较两个日期

javascript - crossfilter.js,如何处理日期维度上的人为重复项

javascript - 如何更改对话框组件中的默认动画?

javascript - 与 Bootstrap 3 一起使用时,表单输入过度模态

javascript - Angular 2 - 路由 useAsDefault 不起作用