angularjs - 形式和验证

时间:2013-01-08 02:26:04

标签: javascript forms validation angularjs

如何阻止表单上的自动验证?每次我使用表单加载模板时,即使没有输入任何数据输入,它也会自动验证自己 我想在提交时触发验证。

HTML:

<span ng-show='message.$invalid == true'>This e-mail is black-listed!</span>
    <form novalidate class="dealermessageform" name="message">
        <input type="text" name="messagename" placeholder="Name" class="messagename" ng-model="user.name" required>
        <input type="email" name="messageemail" placeholder="E-Mail Adresse*" class="messageemail" ng-model="user.email" required>
        <textarea class="message" name="message" placeholder="Schreibe eine Nachricht. *" required></textarea>
        <span class="help-block">*alle markierten Felder sind Pflichtfelder</span>
        <div class="grid_4 alpha omega submitbutton">
            <input type="submit" class="submitbutton" value="Senden" id="submit" ng-click="send()">
        </div>
    </form>  

如果提交后某些错误为TRUE,那么如何才能显示表单上方的“span”字段? 当我输入表格时它也会直接显示出来。

1 个答案:

答案 0 :(得分:1)

如果验证已经发生,那应该不是问题。您不应该显示错误消息。您可以使用$pristine or $dirty执行此操作,具体取决于您使用ng-show还是ng-hide

<span class="help-block" ng-show="message.$dirty && message.$invalid">*alle markierten Felder sind Pflichtfelder</span>

send()函数中,最好添加message作为参数。您也可以在表单标记上使用ng-submit