0

我有一個Parent複選框,當點擊一個子複選框時會被選中。我想要這個父級複選框輪流綁定第三個複選框。但是當更改是由ng檢查導致的時,雙向綁定不起作用。這裏是模板:ng-models當ng檢查時沒有綁定

<div><input type="checkbox" ng-checked="childCheckbox" ng-model="parentCheckbox" /> Parent Checkbox</div> 
<div><input type="checkbox" ng-model="childCheckbox" /> Child Checkbox</div> 
<div><input type="checkbox" ng-model="parentCheckbox" /> A third Checkbox binding with Parent Checkbox</div> 

這裏是的jsfiddle工作樣例:http://jsfiddle.net/Alien_time/vy5UM/1/

爲了換句話說,當父複選框被點擊選中,NG-模型的第三個複選框結合。但是如果父複選框由於ng檢查而被檢查,第三個複選框不會更新更改。我如何在Angular中實現這一點?

+1

納剋核對只是一個條件屬性,它不會永遠修改附加的屬性。是否有理由讓所有這些複選框使用與ng模型相同的值?這似乎是你的意圖 – mbroadst

+0

爲什麼你不能只在第三個複選框中添加'ng-checked =「childCheckbox」'? –

+0

@Artem Petrosian這個例子是演示的簡化版本。但在我的情況下,第三個複選框實際上被放置在另一個ng-repeat中,我無法爲該父項添加ng-checked選項。這就是爲什麼我想將主父複選框放在外面,然後將其與第三個綁定。 – Neel

回答

0

不,我不認爲沒有額外的JS就沒有可能。

但是,I made a version that does use a bit of JS工作正常。

<div><input type="checkbox" ng-click="clickOthers()" ng-model="childCheckbox" /> Child Checkbox</div> 

(加在控制器)

$scope.clickOthers = function() { 
    $scope.parentCheckbox = $scope.childCheckbox; 
} 
+0

謝謝Zeke。 JS方法看起來不錯。我會給現在的一個嘗試.. :) – Neel

+0

謝謝@ZekeSonxx你的JS方法適用於靜態列表。但是,當使用帶有動態ng模型的'ng-repeat'創建複選框時,我仍然很難調整此代碼。自您的解決方案回答了我的上述問題以來,我已接受此答案對於我關於動態複選框的問題,我創建了一個更具體的問題。這裏是鏈接,如果你想看看:http://stackoverflow.com/questions/23468028/how-to-select-parent-checkbox-when-a-child-is-selected-inside-ng-repeat 再次感謝您的支持。非常感激! :) – Neel

相關問題