javascript - 在angularJS中使用动态数组填充复选框

标签 javascript jquery angularjs

我如何将动态变量传递给复选框的 ng-model 的选择。这是 jsfiddle 链接。

http://jsfiddle.net/bmleite/PQvQ2/

这里我想用一个变量替换.js文件中的id:

function Ctrl($scope) {

    $scope.categories = [ { "name": "Sport", "id": "50d5ad" } , {"name": "General", "id": "678ffr" } ];

    var someId = $scope.categories[1].id;
    $scope.selection = {
        ids: {someId: true}
    };
}

但它不起作用。如果我将“someId”替换为“General”,它工作正常。

最佳答案

您可以通过两种方式使用对象属性

object.property1object[property1]

两者都会产生相同的结果,所以如果你将你的 js 文件改成这样,

var app = angular.module('app', []);

function Ctrl($scope) {

    $scope.categories = [{
        "name": "Sport",
        "id": "50d5ad"
    }, {
        "name": "General",
        "id": "678ffr"
    }];

    //define selection object
    $scope.selection = {ids : {}};

    angular.forEach($scope.categories, function(category){
        $scope.selection.ids[category.id] = true;
    });

}

它会给你正确的结果这里是更新JSFIDDLE ...

关于javascript - 在angularJS中使用动态数组填充复选框,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22476893/

相关文章:

javascript - 安全性:innerHTML 与 textContent 与 API

javascript - KineticJs 不同 Angular 旋转

javascript - $scope.$on ('$routeChangeSuccess' ...) 和调用作用域函数中的方法有什么区别?

javascript - 在 ionic 框架中使用 ionic 滚动选择中间元素

javascript - Facebook 社交登录 javascript sdk 不会在 Chrome 或 FF 中加载

jquery - 数据 ("draggable")在 jQuery-ui-1.10.3 中未定义

asp.net - Telerik UI 控件与使用 jQuery 的客户端 UI

javascript - jQuery 选择器中的条件

javascript - 百分比格式的国际化

javascript - 动态删除每一行,同时附加行索引