是否有必要在Angular的输入上有一个maxlength验证消息?

时间:2018-01-23 15:06:09

标签: html angular

在表单元素上使用maxlength属性不仅可以连接Angular的内置验证,还可以防止超出指定长度的输入进入文本框。这是否意味着显示错误消息以打破maxlength验证是没有意义的,因为浏览器已经强制执行限制?在下面的示例中,似乎第二条错误消息似乎永远不会出现。

<input class="form-control" #fName="ngModel" required maxlength="25" />
<div class="form-error-wrapper" *ngIf="fName.invalid && (fName.dirty || fName.touched)">
  <div *ngIf="fName.hasError('required')" class="form-error">
    First name is required
  </div>
  <div *ngIf="fName.hasError('maxlength')" class="form-error">
    First name cannot be longer than 25 characters.
  </div>
</div>

如果浏览器没有让他们在第一时间打破规则,那么让用户知道他们违反了规则是什么意思?

1 个答案:

答案 0 :(得分:1)

你是对的。如果要进行最大长度验证,则不应实现html maxlength属性。否则,用户永远不会违反该规则,因此错误消息将永远不会显示。仅在未设置max length属性的情况下才会使用该错误消息。无论哪种方式都没关系。这取决于偏好。