如何从$ index基础检查值。假设在textboxStart索引和TextboxEnd中。当用户输入开始索引5和结束索引10时,将自动从5到10索引中选中该复选框。请帮助我
<tr ng-repeat="item in MyList">
<td>{{$index}}</td>
<td>
<label class="mdl-checkbox mdl-js-checkbox" for="checkbox33">
<input autocomplete="off" ng-model="item.checked"
type="checkbox" id="checkbox33"
class="mdl-checkbox__input" unchecked>
{{CheckItems()}}
</label>
<td>{{item.Name}}</td>
<td>{{item.PilgrimID}}</td>
<td>{{item.GroupName}}</td>
<td>{{item.PassportNo}}</td>
<td>{{item.Gender}}</td>
<td>{{item.SubAgentName}}</td>
答案 0 :(得分:0)
您可以通过在ItemList模型中添加一个属性(例如ItemIndex)来实现, 并通过放置不显示任何内容的输入框,您可以在ItemList中获取索引值,并可以从javascript端执行所需的操作,
<td><input type="text" style="display:none;" ng-model="item.ItemIndex"
ng-value="$index"/>{{$index}}
</td>
答案 1 :(得分:0)
只需将所选值推入数组selectedItemIndexes
就像ng-checked="selectedItemIndexes.includes($index)"
答案 2 :(得分:0)
使用ng-change
指令指定更新功能:
<div>Input Start
<input ng-model="inputStart" ng-change="updateSelections(inputStart,inputEnd)" />
</div>
<div>Input End
<input ng-model="inputEnd" ng-change="updateSelections(inputStart,inputEnd)" />
</div>
然后更新选择:
$scope.updateSelections = function(iStart, iEnd) {
$scope.MyList.forEach((x,index)=>item.checked = (iStart<=index && index<=iEnd));
};