2017-03-12 95 views
1

我有一個複選框,我想讓它不能點擊。但它也有附加的ng-click功能。這個怎麼做 ?使複選框不能點擊角度

<input id="record-2" type="checkbox" class="checkbox" ng-click="doIfChecked()"> 

我試過添加ng-readonly,ng-disabled但它沒有工作。我添加了css指針事件:沒有,但它沒有工作。我希望這個複選框在布爾真/假表達式上不可點擊。任何想法?

回答

1

這裏是一個工作sinppet

var app = angular.module("myApp", []) 
 

 
app.controller("mainController", ["$scope", function($scope){ 
 
    $scope.someFlag=false; 
 
    $scope.doIfChecked= function(){ 
 
     $scope.someFlag=true; 
 
    } 
 
}]);
select{ 
 
width:50%; 
 
}
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.23/angular.min.js"></script> 
 
<body ng-app="myApp"> 
 

 

 
<input id="record-2" ng-controller="mainController" type="checkbox" ng-controller="mainController" class="checkbox" ng-disabled="someFlag" ng-click="doIfChecked()"> 
 
</body>

+0

我試過了,不起作用 – ksernow

+0

給出了完整代碼 –

+0

即代碼 – ksernow

2

你能處理的NG單擊函數內的非可點擊的情況?如果不是那麼:

<input ng-disabled="disableCondition" id="record-2" type="checkbox" class="checkbox" ng-click="disableCondition?(return false):doIfChecked()"> 

上面的東西應該爲你工作。

說明: 如果知道禁用輸入的條件,則使用相同的條件有條件地調用函數或在點擊時返回false。同樣的邏輯也可以在ng-click處理程序中處理。