ng-repeat中的动态ng模型

拉西特

使用Angular JS,我有这个对象

var pages = [ 
    { name: 'users', title : "Users" }, 
    { name: 'roles', title : 'Roles' }
];

我正在尝试为用户角色创建页面。为此,我需要每个页面4个复选框。每页必须有4条规则。访问,显示,编辑,删除。

以ng-repeat显示页面

<div ng-controller='PageCtrl'>
   <ul>
     <li ng-repeat='page in pages'>
        {{ page.title }}
        <input type="checkbox" name="access"> Access
        <input type="checkbox" name="show"> Show
        <input type="checkbox" name="edit"> Edit
        <input type="checkbox" name="delete"> Delete
     </li>
   </ul>
</div>

因此,我需要将这些复选框的值传递给$ scope。如何为每个复选框绑定模型?

像这样

<input type="checkbox" name="access" ng-model='page.name+_access'> Access

复选框模型名称应以page.name开头。像users_access,users_show ...

Raina77ow

您可以使用以下语法:

ng-model="page[page.name+'_access']"

但实际上,看起来一个人也可以将这些组也移到控制器中,然后再使用另一个ng-repeat。像这样:

HTML:

<div ng-controller="PageCtrl">
    <ul>
        <li ng-repeat='page in pages'>{{ page.title }}
            <label ng-repeat="right in rights">
                <input type="checkbox" ng-model="page[page.name + '_' + right]" name="{{right}}" />{{right|capitalize}}</label>
            <button ng-click="log(page)">Log</button>
        </li>
    </ul>
</div>

JS:

var module = angular.module('myAp', [])
    .controller('PageCtrl', ['$scope', function ($scope) {
    $scope.pages = [{
        name: 'users',
        title: "Users"
    }, {
        name: 'roles',
        title: 'Roles'
    }];
    $scope.rights = ['access', 'show', 'edit', 'delete'];

    $scope.log = function (page) {
        console.log(page);
    }
}]).filter('capitalize', function() {
    return function (value) {
        return value.charAt(0).toUpperCase() + value.slice(1);
    };
});

演示

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

在DOM中动态重新加载ng-repeat数据

来自分类Dev

在ng-repeat中动态应用格式过滤器

来自分类Dev

具有动态ng模型的ng-repeat中的ng-class

来自分类Dev

角ng在ng-repeat中单击

来自分类Dev

ng模型中的动态变量

来自分类Dev

ng-if在ng-repeat angularjs中

来自分类Dev

如何动态禁用ng-repeat中的过滤器

来自分类Dev

ng-repeat中的角度单选按钮模型

来自分类Dev

Angular中的ng-repeat动态模型和脏检查

来自分类Dev

angularjs ng-repeat中的动态互斥下拉列表

来自分类Dev

输入的角度ng模型未在ng-repeat中绑定

来自分类Dev

NG-OPTIONS中的硬编码值和NG-REPEAT中的动态值

来自分类Dev

修改ng-repeat中输入值的更改模型

来自分类Dev

ng-repeat中的动态ng模型未定义

来自分类Dev

angular.js ng:repeat迭代中的动态模板值

来自分类Dev

如何动态禁用ng-repeat中的过滤器

来自分类Dev

Angular中的ng-repeat动态模型和脏检查

来自分类Dev

ng-repeat中的动态元素;点击数

来自分类Dev

ng-repeat中的动态选择选项

来自分类Dev

输入的角度ng模型未在ng-repeat中绑定

来自分类Dev

NG-OPTIONS中的硬编码值和NG-REPEAT中的动态值

来自分类Dev

将动态ng模型转换为ng-repeat AngularJS

来自分类Dev

ng-repeat中的加载指令(动态templateUrls)

来自分类Dev

具有ng-repeat的动态ng模型

来自分类Dev

ng-repeat-start的ng-repeat内部模型的模型

来自分类Dev

如何动态限制ng-repeat中显示的数据?

来自分类Dev

使用$索引和$父级在ng-repeat和子ng-repeat中动态创建ng-model。

来自分类Dev

ng-repeat中范围的动态名称

来自分类Dev

在ng-repeat angularjs中动态添加div元素