简体   繁体   English

如果没有特定的元素可见,Angular2将显示元素

[英]Angular2 show element if no specific elements are visible

HTML: HTML:

<form>
  <div class="row">
    <div class="col">
      <div class="form-group">
        <label for="registerFormEmail">Email Address</label>
        <input type="text" class="form-control" placeholder="Enter your email address..."
               [(ngModel)]="registerEmail" name="field" #email="ngModel" email>
        <p *ngIf="email.errors?.email">Invalid Email</p>
      </div>
    </div>
    <div class="col"></div>
  </div>

  <div class="row">
    <div class="col">
      <div class="form-group">
        <label for="registerFormBattletag">Battletag</label>
        <input type="text" class="form-control" placeholder="Enter your Battletag..."
               [(ngModel)]="registerBattletag" name="registerFormBattletag" ngControl=”battletag” #btag="ngModel" pattern="[a-zA-Z]+[#][0-9]{4}$">
        <p *ngIf="btag.errors?.pattern">Invalid Battletag</p>
      </div>
    </div>
    <div class="col"></div>
  </div>

  <div class="row">
    <div class="col">
      <div class="form-group">
        <label for="registerFormPassword">Password</label>
        <input type="password" class="form-control" placeholder="Enter your password..."
               [(ngModel)]="registerPassword" name="registerFormPassword" #password="ngModel" [minlength]="6">
        <p *ngIf="password.errors?.minlength">Invalid Password</p>
      </div>
    </div>
    <div class="col">
      <div class="form-group">
        <label for="registerFormConfirmPassword">Confirm Password</label>
        <input type="password" class="form-control" placeholder="Confirm your password..."
               [(ngModel)]="registerConfirmPassword" name="registerFormConfirmPassword" #confirmPassword="ngModel" [equalTo]="password">
        <p *ngIf="confirmPassword.errors?.equalTo">equalTo error</p>
      </div>
    </div>
  </div>

  <button type="submit" class="btn btn-primary"
          (click)="register(registerEmail, registerPassword)">Register</button>
</form>

I have <p> elements showing up if the <input> 's don't validate. 如果<input>不验证,我将显示<p>元素。 I need to disable the submit button if one or more of those <p> elements are visible (not sure how else to finish off form validation). 如果这些<p>元素中的一个或多个可见,我需要禁用Submit按钮(不确定如何完成表单验证)。 What would be the best method of enabling the submit button if all validations passed, and keeping it disabled if one or more validations failed? 如果所有验证均通过,则启用提交按钮,如果一个或多个验证失败,将其保持禁用的最佳方法是什么?

use disabled in button element. 在按钮元素中禁用。

 <button type="submit" [disabled]="btag.errors?.pattern || btag.errors?.pattern || password.errors?.minlength || confirmPassword.errors?.equalTo" class="btn btn-primary" (click)="register(registerEmail, registerPassword)">Register</button> 

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM