是否需要为输入设置ng-required和ng-minlength?

时间:2016-05-03 04:31:58

标签: angularjs

我一直在做一些测试,似乎只设置required="required"minlength="5"与设置ng- versions完全相同。

还有其他人遇到过这个吗?

2 个答案:

答案 0 :(得分:1)

当您确定该字段是必需还是输入的最小长度时,input name=n required minlength=12就可以了。但是,如果存在控制这些决策的变量/函数minlength=name.minLength,则没有意义。

然后我们需要使用input ng-required="isThisTrue()" ng-minlength="name.minLength"

答案 1 :(得分:1)

必需 minlength 属性是 HTML5 表单验证工具。如果要实现验证,可以使用HTML5属性或Angular验证指令。使用Angular指令的优点是您可以访问许多功能,如:

  • 自定义类取决于表单状态:
    • ng-valid :模型有效
    • ng-invalid :模型无效
    • ng-pristine :控件尚未与之交互
    • ng-dirty :控件已与
    • 进行了互动
    • ng-touching :控件已模糊
    • ng-untouched :控件未模糊

您还可以为表单中的每个元素提供以上属性:

<form name="my_form" novalidate>
    <input type="text" ng-model="user.name" name="user_name" required="" />
    <div ng-show="my_form.user_name.$touched">You have make changes to the field</div>
    <div ng-show="my_form.$submitted || my_form.user_name.$touched">
        <div ng-show="form.uName.$error.required">You don't have a name :(</div>
    </div>
</div>

另外,正如您在上面的示例中所注意到的,您可以为每个验证规则显示自定义错误消息。