需要再次使用angularjs停止点击

时间:2015-03-25 14:14:43

标签: javascript angularjs

当用户点击按钮时,它会显示微调器图标,直到完成任务。但是用户仍然可以再次单击该按钮。如何阻止它?

enter image description here

Spinner directive

HTML

   <span us-spinner="{left: '91.6%',top:'65.5%',length: 5,width: 2,radius:4}" spinner-key="spinner-1"></span>
   <button class="btn btn-green" ng-click="MyClick()" ng-disabled="frmMy.$invalid"><i class="fa fa-envelope-o"></i> Send</button>

1 个答案:

答案 0 :(得分:1)

加载时应将ng-disabled设置为true,加载完成后将其更改为false。

我添加了jsfiddle这样做,而不是真正的加载,我使用5秒的超时进行假加载。

这是解决问题的逻辑。

HTML:

<div class="well" ng-controller="MyController">
    <button class="btn btn-primary" ng-disabled="isLoading" 
     ng-click="myClick()">BUTTON</button> 
</div>

控制器:

function MyController($scope,$timeout) {


    $scope.myClick = function() {
        $scope.isLoading = true;

        /// Faking Loading logic
        $timeout(function(){
            $scope.isLoading = false},5000)
    };


}