每10个项目后的重复列表项周围的包装

Gha*_*han 5 html javascript angularjs angularjs-ng-repeat

我有一个场景,如果内部列表项目达到每10个选项,我必须创建一个新的ul.例如,这里是小提琴.我有两个变量,每个变量包含许多选项.我在行div上有外部ng-repeat,在列表项li上有内部重复.由于一些设计问题,如果内部li选项达到10计数,我必须创建一个新的ul.这是一个ul只能处理10个项目列表.如何在不影响现有变量代码的情况下动态执行此操作.我尝试了一些小组,但它仅限于修改现有的变量数组.

这是代码

HTML

<div ng-controller="MainCtrl">
  <div class="grid-list">
    <div class="grid-row" ng-repeat="variable in variables track by $index">
      <div class="grid_question"> {{variable.name}}
        <ul class="grid-list"> /// add new ul after every 10 option, ul can contain only 10 list.
          <li ng-repeat="option in variable.options track by $index">{{option.name}}</li>
        </ul>
      </div>
    </div>
  </div>
</div>
Run Code Online (Sandbox Code Playgroud)

JS代码

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

function MainCtrl($scope) {
  $scope.variables = [{
      name: 'List 1',
      options: [{
        name: 'Option 1',
        value: '',
        has_comment: false
      }, {
        name: 'Option 2',
        value: '',
        has_comment: false
      }, {
        name: 'Option 3',
        value: '',
        has_comment: false
      }, {
        name: 'Option 4',
        value: '',
        has_comment: false
      }, {
        name: 'Option 5',
        value: '',
        has_comment: false
      }, {
        name: 'Option 6',
        value: '',
        has_comment: false
      }, {
        name: 'Option 7',
        value: '',
        has_comment: false
      }, {
        name: 'Option 8',
        value: '',
        has_comment: false
      }, {
        name: 'Option 9',
        value: '',
        has_comment: false
      }, {
        name: 'Option 10',
        value: '',
        has_comment: false
      }, {
        name: 'Option 11',
        value: '',
        has_comment: false
      }, {
        name: 'Option 12',
        value: '',
        has_comment: false
      }, {
        name: 'Option 13',
        value: '',
        has_comment: false
      }]
    },
    {
      name: 'List 2',
      options: [{
        name: 'Option 1',
        value: '',
        has_comment: false
      }, {
        name: 'Option 2',
        value: '',
        has_comment: false
      }, {
        name: 'Option 3',
        value: '',
        has_comment: false
      }, {
        name: 'Option 4',
        value: '',
        has_comment: false
      }, {
        name: 'Option 5',
        value: '',
        has_comment: false
      }, {
        name: 'Option 6',
        value: '',
        has_comment: false
      }, {
        name: 'Option 7',
        value: '',
        has_comment: false
      }, {
        name: 'Option 8',
        value: '',
        has_comment: false
      }, {
        name: 'Option 9',
        value: '',
        has_comment: false
      }, {
        name: 'Option 10',
        value: '',
        has_comment: false
      }, {
        name: 'Option 11',
        value: '',
        has_comment: false
      }, {
        name: 'Option 12',
        value: '',
        has_comment: false
      }, {
        name: 'Option 13',
        value: '',
        has_comment: false
      }]
    },
  ]
}
Run Code Online (Sandbox Code Playgroud)