2016-09-06 139 views
0

嗨,大家好,有什么方法可以检查禁用按钮?如何检查禁用的按钮是真/假?在angularjs

这里是我的按钮禁用内部代码(index.html的):

ng-disabled="epUpdateAllForm.$invalid || epUpdateAllForm.$pending" 

在控制器:

if((($scope.epUpdateAllForm.$invalid) || ($scope.epUpdateAllForm.$pending)) == true) { 

     console.log("Some mandatory fields is not completed"); 
    } 

回答

0

您可以查看按钮使用被禁用angular.element(..).prop()

var target = angular.element(document.getElementById("#buttonIdHere")); 
if (target.prop('disabled')) { 
    // Button is disabled 
} 

选项2 手表yourForm.$validyourForm.$invalid & yourForm.$pending在控制器

var isFormValid = false; 
$scope.$watch('yourForm.$valid', function(newVal) { 
    isFormValid = true; 
}); 

$scope.$watch('yourForm.$invalid', function(newVal) { 
    isFormValid = false; 
}); 

$scope.$watch('yourForm.$pending', function(newVal) { 
    isFormValid = false; 
}); 

,简单地检查是否isFromValid执行您提交的逻辑之前,是真实的。

0

如果您需要检查submit的逻辑,那么您可以将表单对象传递给处理程序submit

jsfiddle上的示例。

angular.module('ExampleApp', []) 
 
    .controller('ExampleController', function($scope) { 
 
    $scope.submit = function(form) { 
 
     if (form.$invalid) 
 
     console.warn('Form is invalid'); 
 
     else 
 
     console.log('Form is valid'); 
 
    }; 
 
    });
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.23/angular.min.js"></script> 
 
<div ng-app="ExampleApp"> 
 
    <div ng-controller="ExampleController as vm"> 
 
    <form name="testForm"> 
 
     <label> This field is required 
 
     <input type="text" name="testInput" ng-model="myInput" required> 
 
     </label> 
 
     <button ng-click="submit(testForm)"> 
 
     Submit 
 
     </button> 
 
    </form> 
 
    </div> 
 
</div>

相关问题