【问题标题】:Angular:- not displaying and hide error messageAngular:- 不显示和隐藏错误消息
【发布时间】:2018-08-02 18:10:15
【问题描述】:

以下是 onclick 提交按钮工作正常的代码,如果其错误,则仅在提交按钮上显示错误,一旦用户填写正确的信息,它就会不断出现并仅在单击提交按钮时继续,即如果条件仅适用于提交按钮,不适用于表单本身。我想我正在跳过一些东西

下面是 HTML 文件

<div class="col-sm-6 pb-3 zip-wrapper">
              <label for="mailingZip" class="required">Zip Code</label>
              <div class="input-wrapper">
                <input type="text" name="mailingZip" [maxLength]="20" [disabled]="setAsResidential" placeholder="Enter Zip Code" [(ngModel)]="mailingAddress.zip.value"
                  autocomplete="off" (keyup)="validateMailingZipCode()" (blur)="validateMailingZipCode()">
              </div>

              <div class="clearfix"></div>
              <p *ngIf="mailingAddress.zip.error" class="clearfix error-message">
                <i class="fa fa-exclamation-triangle" aria-hidden="true"></i> {{mailingAddress.zip.errorMessage}}</p>
            </div>

下面是ts文件

 validateMailingZipCode() {
    let hasErrors: boolean = false;
    if (parseInt(this.mailingAddress.zip.value) >= parseInt('01001') && this.mailingAddress.zip.value.length === 5) {
      return false;
    } else {
      hasErrors = true;
      this.mailingAddress.zip.error = true;
      this.mailingAddress.zip.errorMessage = 'Invalid Zip Code Provided';
    }
    return hasErrors;
  }

【问题讨论】:

  • 你的代码没有提交按钮。

标签: angular angular5 angular6


【解决方案1】:

只需在您的函数中重置this.mailingAddress.zip.error:

validateMailingZipCode() {
  this.mailingAddress.zip.error = false; // Reset to false on keyup
  let hasErrors: boolean = false;
  if (parseInt(this.mailingAddress.zip.value) >= parseInt('01001') && this.mailingAddress.zip.value.length === 5) {
    return false;
  } else {
    hasErrors = true;
    this.mailingAddress.zip.error = true;
    this.mailingAddress.zip.errorMessage = 'Invalid Zip Code Provided';
  }
  return hasErrors;
}

【讨论】:

  • 另一个输入的相同功能导致我同样的问题。与其在这里问另一个问题,我可以知道我应该检查什么以查看为什么 keyup 事件没有显示结果
  • @Developer console.log() 函数开始和结束时的变量
猜你喜欢
  • 2018-07-06
  • 1970-01-01
  • 1970-01-01
  • 2016-02-03
  • 2020-08-10
  • 2018-01-12
  • 2021-03-11
  • 1970-01-01
  • 2023-04-02
相关资源
最近更新 更多