2014-06-09 53 views
0

我想點擊從我的腳本功能之一的複選框,但我不知道如何在angularjs中做到這一點?

我曾嘗試以下方法,但它不工作:
JS
如何在angularjs中從js腳本點擊按鈕?

var a = document.getElementById("selectAllElem"); 
$scope.selectAll = a["onclick"]; 
if (typeof($scope.selectAll) == "function") { 
    alert("call click"); 
    $scope.selectAll(a); 
} 

HTML

<input type="checkbox" ng-click="selectAll($event)" id="selectAllElem" /> 

誰能告訴我如何使複選框點擊從js腳本在angularjs?

UPDATE
因爲上述複選框被放置在表頭,並在其點擊我需要讓所有選中的複選框爲取消和取消複選框爲選中我不能只使用單一的標誌變量。 我需要調用按鈕點擊來實現目標。

如何使複選框單擊從js腳本在angularjs?

+0

在AngularJS模型驅動視圖品行。看到這個帖子http://stackoverflow.com/questions/14994391/how-do-i-think-in-angularjs-if-i-have-a-jquery-background – Chandermani

回答

0

修訂

可以範圍變量綁定到所有的複選框,並改變他們在全選()方法處理點擊。 此外,您可以將方法綁定到selectAllElem複選框,檢查是否選中了所有其他複選框。 我將selectAll()重命名爲toggleAll()以顯示如何在一種方法中選擇/取消選擇。

例如爲:從陣列中產生

<input ... ng-click="toggleAll()" ng-model="allSelected()" /> 

$scope.allSelected = function(){ 
    return $scope.option1 && $scope.option2; 
} 
$scope.toggleAll = function(){ 
    var value = !$scope.allSelected(); 
    $scope.option1 = value; 
    $scope.option2 = value; 
} 

在複選框的情況下,可以有scope.options和在兩種方法遍歷它。

OLD

你可以輸入綁定到範圍變量,例如:

<input type="checkbox" ng-click="selectAll($event)" id="selectAllElem" ng-model="allSelected" /> 

然後設置變量從功能

$ scope.allSelected內= TRUE;

+0

請更新chceck的問題。 –

0

可以使用此來代替上面的代碼:

<input type="checkbox" ng-click="selectAll()" id="selectAllElem" ng-model="allSelected" /> 

在控制器創建函數全選():

$scope.selectAll=function(){ 
    $scope.allSelected=true; 
} 
+0

請檢查更新的問題。 –