<li ng-repeat="header in table.headers track by $index">
<div data-ng-if="header.type === 'checkbox'">
{{header.value}}<input type="checkbox"
ng-init="table.addBoxInputs[$index] = {type: 'checkbox', checked: false, value: header.value}"
/>
</div>
所以我的程序动态生成一个复选框,最初传入json。现在我希望json的checked
键更改为true
或false
,具体取决于是否选中了复选框。
我不想在控制器中创建一个方法并更改它,有没有办法在标记中执行此操作?我尝试添加以下内容:
ng-model='table.addBoxInputs[$index]'
ng-change="table.addBoxInputs[$index] = {type: 'checkbox', checked: table.addBoxInputs[$index], value: header.value}"
然而,这不会起作用,因为ng-model将继续将table.addboxinput [$ index]更改为true或false,基于复选框
答案 0 :(得分:1)
我不支持在您的标记中执行此操作,但如果您想要这样做,那么您需要将ng-click指令添加到您的复选框中,如下所示:
<input type="checkbox" ng-init="table.addBoxInputs[$index] = {type: 'checkbox', checked: false, value: header.value}" ng-click="table.addBoxInputs[$index].checked = !table.addBoxInputs[$index].checked" />
这是一个有效的plunk。