在ng-repeat中检查AngularJS复选框

前端之家收集整理的这篇文章主要介绍了在ng-repeat中检查AngularJS复选框前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我知道解决方案不是很漂亮,但是我正在使用的模板需要它.

现在它可以正常工作,当产品在列表中时,它会向我显示“已添加”的span元素.

<section ng-repeat="product in products">
    <label>
        <input type="checkBox" 
            checklist-model="foobar.products" 
            checklist-value="product.id">
        {{ product.name }}
    </label>

    <div ng-repeat="current_item in my.profile.items">
        <span ng-show="product.id==current_item.id">Added</span>
    </div>
</section>

我想要的是,当复选框后面还出现“已添加”文本时,选中要选中的复选框.

我试过这样做:

<ng-checked="{{my.profile.items.array.thing}}">

但那不起作用.因为数组中的产品如:

[{       
    id: 1,name:"Trinity",id: 2,name:"Van Gogh",id: 3,name:"Bonaqua",}]

而my.profile.items是一个包含更多信息的数组.因为它是我存储它的多对多关系.

有没有办法做到这一点?我不介意一个肮脏的解决方案:P

我试过这个:

// NG-check function
$scope.checkStoredValues = function(my) {

    // Loop trought my current stored items
    angular.forEach(my.profile.items,function(value,key) {

        // Loop trough the array    
        angular.forEach(value,key) {
            console.error(key);

            // If key == 'id'
            if(key == 'id'){
                // Push the value to the Array of the checkBoxes,// so it's checked 
                // # Docs: http://vitalets.github.io/checklist-model/
                console.info(value); // Return's: integer 
                foobar.products.push(value); // Needs more then an integer I guess..

            }
        });
    });

};

返回:TypeError:无法读取undefined的属性’push’

将此功能添加到您的控制器:
$scope.isChecked = function(product) {
  var items = $scope.my.profile.items;
  for (var i=0; i < items.length; i++) {
    if (product.id == items[i].id)
      return true;
  }

  return false;
};

并为您的HTML使用

<section ng-repeat="product in products">
    <label>
        <input type="checkBox" 
               ng-checked="isChecked(product)">
        {{ product.name }}
    </label>

    <div ng-repeat="current_item in my.profile.items">
        <span ng-show="product.id==current_item.id">Added</span>
    </div>
</section>
原文链接:https://www.f2er.com/angularjs/142354.html

猜你在找的Angularjs相关文章