[英]Using ng-disabled on a group of inputs based on one value
我目前正在使用一个复选框来切换8个表单元素上的Disabled属性。 我在每个元素上使用了ngDisabled指令 。 我正在寻找一种不必将指令放在8个元素中的每个元素上的方法。 这可能吗?
复选框切换
<input type="checkbox" ng-model="aircraftOnGround" />
当前在每个表单元素上使用的禁用工作指令
ng-disabled="aircraftOnGround"
Codepen在这里: CodePen
您可以使用字段集禁用其中的每个字段。
var $scope = {}; var myApp = angular.module('myApp', []); myApp.controller('formCtrl', ['$scope', function($scope){ $scope.aircraftOnGround = 'true'; }]);
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.23/angular.min.js"></script> <body ng-app="myApp"> <form ng-controller="formCtrl"> <fieldset ng-disabled='aircraftOnGround'> <!-- USE NG_DISABLE HERE --> <input type="text"> <input type="text"> </fieldset> <br> <b>aircraftOnGround:</b> <button type="button" ng-click="aircraftOnGround = !aircraftOnGround"><span ng-bind="aircraftOnGround"></span></button> </form> </body>
您可以使用控制器中的观察器来禁用DOM元素集合。
myapp.controller('mainCtrl', function($scope, $element){
$scope.aircraftOnGround = false;
$scope.name = "abdullah";
$scope.$watch('aircraftOnGround',function(value) {
$element.find('.form-control').prop('disabled',value);
});
});
注意:我在示例中使用的是jQuery。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.