私を助けてください。モデルが定義されたチェックボックスがあります。私はチェックボックスを表示しており、チェックボックスが選択されているかどうかを設定するためにモデルを使用しています。以下は、ng-modelを設定するためのコードです。ng-repeatにチェックボックスを再割り当てする方法
LoadValues(obj) {
vm.index = false;
vm.create = false;
vm.edit = false;
vm.delete = false;
vm.other = false;
var pList = obj.Functions;
var currentModule = obj.Name;
for (var i = 0; i < pList.length; i++) {
var currentItem = pList[i];
console.log(currentItem)
if (currentItem.search("Index") > 0) {
vm.index = true;
console.log(vm.index);
} else if (currentItem.search("Create") > 0) {
vm.create = true;
} else if (currentItem.search("Edit") > 0) {
vm.edit = true;
} else if (currentItem.search("Delete") > 0) {
vm.delete = true;
} else if (currentItem.search("Other") > 0) {
vm.other = true;
}
}
}
以下はチェックボックスです。
<tbody>
<tr ng-repeat="item in list">
<td>
{{item.Name}}
</td>
<td>
<input id="Index" type="checkbox" ng-model="vm.index" ng-click="EditRole(Right,item.Module,'Index')">
</td>
<td>
<input id="Create" type="checkbox" ng-model="vm.create" ng-click="EditRole(item.Role,'Create')">
</td>
<td>
<input id="Edit" type="checkbox" ng-model="vm.edit" ng-click="EditRole(item.Role,item.Module,'Edit')">
</td>
<td>
<input id="Delete" type="checkbox" ng-model="vm.delete" ng-click="EditRole(item.Role,item.Module,'Delete')">
</td>
<td>
<input id="Other" type="checkbox" ng-model="vm.other" ng-click="EditRole(item.Role,item.Module,'Other')">
</td>
</tr>
</tbody>
問題は、リスト内のすべての項目に同じng-modelを割り当てていることです。私は何も助けてくれない解決策を見つけようとしました。あなたの助けは非常に高く評価されるでしょう。
私はjsonファイルから自分のデータを読んでいます。以下にいくつかの例のデータをされていますため、ループ内のコントローラ内で
ng-model="item.index"
そして:
[
{"Role":"Staff","Admins":[{"Name":"Username","userRights":["UserEdit","UserCreate"]
}]
'NG-モデル= "item.index"'、 'item.create'、' item.edit'などを使用してください – devqon
この回答は参考になりましたhttp://stackoverflow.com/a/14516885/1599191 –