2016-07-27 85 views
2

我想单击一次后禁用按钮。在一次点击后禁用提交按钮angularJS

代码:

<button id="submitRequest" class="btn btn-primary btn-active" ng-disabled="!frmRequest.$valid||!r.DataUseAgreement||(!chkBMT&&!chkOncore&&!chkCAISIS&&!chkLIMS&&!chkFCR)" ng-click="SaveData()"><i class="fa fa-save"></i> Submit</button> 

如何禁用这个后点击?

谢谢!

+0

你是什么意思*通过点击*? –

+0

所有输入,复选框和选择需要添加 –

回答

5

简单。你写了一些javascript的元素,如onclick="this.disabled=true"

<button id="submitRequest" onclick="this.disabled=true" class="btn btn-primary btn-active" ng-disabled="!frmRequest.$valid||!r.DataUseAgreement||(!chkBMT&&!chkOncore&&!chkCAISIS&&!chkLIMS&&!chkFCR)" ng-click="SaveData()"><i class="fa fa-save"></i> Submit</button>

+1

这将禁用按钮一次点击,但它不允许表单提交一次点击。 – Hema

1

在你保存数据()函数,在函数开头添加以下行:

$scope.saving=true; 

然后,在你的NG-禁用状况,增加附加条件:

saving||!frmRequest.$valid||!r.DataUseAgreement||(!chkBMT&&!chkOncore&&!chkCAISIS&&!chkLIMS&&!chkFCR) 
1

禁用

<input type="submit" name="Submit" class="btn btn-primary" 
value="Submit" ng-disabled="button.disabled"/> 

在控制器,其中u提交表单后按钮点击只需添加

这将禁用点击表单提交

0

后的按钮,这是很简单的。你只需要在你的ng-disable语句中添加一个布尔条件。

<button class="btn btn-info" ng-click="ctrl.isSubmit()" ng-disabled="ctrl.submitClicked">Submit</button> 

而在你的控制器

var vm=this; 
vm.submitClicked=false; 

vm.isSubmit= function(){ 
vm.submitClicked= true; 
} 

这里是一个Plunker,我把你