【发布时间】:2014-06-24 05:46:02
【问题描述】:
我的页面上有 3 到 4 级层次结构的复选框。选中第一级时,会出现 2 级复选框,并且在选中 2 级 - 3 级复选框时会出现。
当用户取消选中父复选框时,应取消选中所有子复选框,包括收音机。
这是场景。
我通过为每个孩子创建一个容器 div 然后使用 ng-if 来完成隐藏工作。这仅显示隐藏容器。但是如何取消选中所有子元素复选框?
示例代码:-
<div class="col-sm-12">
<input type="checkbox" ng-model="todo.level1" />
<label>Level 1</label>
</div>
<div class="col-sm-12" ng-show="todo.level1">
<!------- Level 2 ------->
<div class="col-sm-12">
<div class="col-sm-offset-1 col-sm-11" ng-if="todo.level1">
<input type="checkbox" ng-model="todo.c2" />
<label> C2</label>
</div>
<div class="col-sm-12" ng-show="todo.level2">
<div class="col-sm-12" ng-if="todo.level2">
<div class="margin-left-2">
<input type="checkbox" ng-model="todo.level3" />
<label>Level 3 - 1</label>
</div>
</div>
<div class="col-sm-12" ng-if="todo.level4">
<div class="margin-left-3">
<select id="Select1">
<option>Choose</option>
<option>25%</option>
<option>25-50%</option>
<option>50%</option>
</select>
</div>
</div>
<div class="col-sm-12" ng-if="todo.c2">
<div class="margin-left-2">
<input type="checkbox" ng-model="todo.level3" />
<label>Level 3 - 2</label>
</div>
</div>
<div class="col-sm-12" ng-if="todo.level4">
<div class="margin-left-3">
<label>Level 4 - 1</label><br />
<input type="radio" value="Yes" /><label> Yes</label>
<input type="radio" value="No" /><label> No</label>
</div>
</div>
</div>
</div>
【问题讨论】:
-
一个小提琴会很好。
-
我设法创建了一个小提琴......但它不完整......检查这个jsfiddle.net/4PL3E
标签: javascript html angularjs checkbox