【发布时间】:2015-10-21 01:55:34
【问题描述】:
我在表单中添加了“必需”和“模式”等字段验证属性,并且表单位于 ng-controller 中。验证有效。但似乎验证是在页面加载时触发的,我看到所有字段在页面加载时都被标记为无效并显示错误消息。
我尝试按照 AngularJS 网站上的示例在表单中添加“novalidation”属性,但没有成功。
我希望在用户第一次尝试与之交互时触发验证。我该怎么做?
更新
这是一个例子https://jsfiddle.net/davidshen84/00t197gx/
<div class="mdl-cell mdl-cell-6-col mdl-textfield mdl-js-textfield">
<input class="mdl-textfield__input" type="text" id="screenname" pattern="[a-zA-Z0-9]{3,}" ng-model="comment.screenname" required/>
<label class="mdl-textfield__label" for="screenname">Screen Name</label>
</div>
加载时,您应该看到所有输入字段下方都有一条红线,表示它们处于无效状态。验证后该线变为蓝色。
注意:检查按钮上的样式不起作用……应该不是问题的关注点。
【问题讨论】:
-
你能加点
markup吗?你如何显示验证?使用ng-messages或显示和隐藏divs 使用ng-show..? -
这听起来不像是正常行为,但如果没有您的代码示例,很难知道为什么会发生这种情况或提供替代方案。
标签: angularjs validation