ngForm 无效时禁用按钮
Disable button while ngForm is invalid
我有一个添加模式,因为我需要在内容填满之前禁用“保存”按钮。当内容被填充时,按钮应该得到 enabled.Here is my code
<div bsModal #editModal="bs-modal" class="modal fade" tabindex="-1" role="dialog" aria-labelledby="myLargeModalLabel" aria-hidden="true">
<div class="modal-dialog modal-md">
<div class="modal-content">
<form name='groupForm' #groupForm="ngForm" novalidate>
<div class="modal-header">
<h4 class="modal-title wd-title-popup">Add Access Group</h4>
</div>
<div class="modal-body row">
<div class="col-lg-12 col-md-12 col-sm-12 col-xs-12 accssContent paddingLeftClass">
<md-input-container style='width: 100%;margin-bottom: 6px !important;'>
<input type="textbox" mdInput name="admin" [(ngModel)]="group.groupName" placeholder="Access Group Name" required>
</md-input-container>
</div>
</div>
<div md-theme="reports" class="modal-footer" style="text-align: center;">
<div layout-align="end center" layout="row">
<button md-raised-button class="md-raised color-white" (click)="editModal.hide()" style="width: 45%;margin: 10px 5px;background-color: #FF5252;">Cancel</button>
<button md-raised-button class="md-raised color-white" [disabled]="!groupForm.form.valid" (click)="accessGroup(group)" style="width: 45%;margin: 10px 5px;background-color:#58B6A2;">Save</button>
</div>
</div>
</form>
</div>
</div>
这同样适用于其他按钮。我哪里做错了?
您的表单有 novalidate
,这可能会导致表单跳过验证并且未设置有效变量
尝试使用 invalid
属性。像这样更改它:
<button md-raised-button class="md-raised color-white"
(click)="accessGroup(group)"
[disabled]="groupForm.invalid">Save</button>
Link 到 Plunker Demo.
我有一个添加模式,因为我需要在内容填满之前禁用“保存”按钮。当内容被填充时,按钮应该得到 enabled.Here is my code
<div bsModal #editModal="bs-modal" class="modal fade" tabindex="-1" role="dialog" aria-labelledby="myLargeModalLabel" aria-hidden="true">
<div class="modal-dialog modal-md">
<div class="modal-content">
<form name='groupForm' #groupForm="ngForm" novalidate>
<div class="modal-header">
<h4 class="modal-title wd-title-popup">Add Access Group</h4>
</div>
<div class="modal-body row">
<div class="col-lg-12 col-md-12 col-sm-12 col-xs-12 accssContent paddingLeftClass">
<md-input-container style='width: 100%;margin-bottom: 6px !important;'>
<input type="textbox" mdInput name="admin" [(ngModel)]="group.groupName" placeholder="Access Group Name" required>
</md-input-container>
</div>
</div>
<div md-theme="reports" class="modal-footer" style="text-align: center;">
<div layout-align="end center" layout="row">
<button md-raised-button class="md-raised color-white" (click)="editModal.hide()" style="width: 45%;margin: 10px 5px;background-color: #FF5252;">Cancel</button>
<button md-raised-button class="md-raised color-white" [disabled]="!groupForm.form.valid" (click)="accessGroup(group)" style="width: 45%;margin: 10px 5px;background-color:#58B6A2;">Save</button>
</div>
</div>
</form>
</div>
</div>
这同样适用于其他按钮。我哪里做错了?
您的表单有 novalidate
,这可能会导致表单跳过验证并且未设置有效变量
尝试使用 invalid
属性。像这样更改它:
<button md-raised-button class="md-raised color-white"
(click)="accessGroup(group)"
[disabled]="groupForm.invalid">Save</button>
Link 到 Plunker Demo.