Как зациклиться внутри объявления столбцов с данными?

У меня есть приведенное ниже объявление с данными, и я хочу, чтобы изображения отображались в зависимости от некоторого значения столбца (team_members). Как я могу объявить цикл for внутри объявления столбцов? мне нужен этот результат: введите здесь описание изображения

var datatableVariable = $('#projects-progress').DataTable({
    data: data,
    columns: [
    { 'data': 'project_name' },
    { 'data': 'team_members_value' }, // to be hidden
    {
     //I want loop here depend on the number of team_members_value (second column above)
     mRender: function (o) { return '<img src="images/img.jpg" class="avatar" alt="Avatar">';
    },
/* EDIT Delete */
    {
    mRender: function (o) { return '<a href="#" class="btn btn-primary btn-xs"><i class="fa fa-folder"></i> View </a><a href="#" class="btn btn-info btn-xs"><i class="fa fa-pencil"></i> Edit </a><a href="#" class="btn btn-danger btn-xs"><i class="fa fa-trash-o"></i> Delete </a>'; }
    },
  ]
 });

<table id="projects-progress" class="table table-striped projects">
                      <thead>
                        <tr>
                          <th>Project Name</th>
                          <th>Team Members</th>
                          <th>Actions</th>
                        </tr>
                      </thead>
                    </table>

person alaa    schedule 12.04.2017    source источник
comment
Где вы хотите отобразить изображение?   -  person Pavlo Zhukov    schedule 12.04.2017
comment
@Павло Жуков в таблице данных (столбец x)   -  person alaa    schedule 12.04.2017


Ответы (1)


Вы можете использовать параметр render в объявлении столбца.

{
   "data": "team_members_value",
   "render": function (data, type, full, meta) {
       var markup = '';
       for (var i = 0; i < data; i++) {
           markup +='<img src="images/img.jpg" class="avatar" alt="Avatar">'
       });
       return markup ;
   }
}

Вам нужно сделать что-то вроде этого:

  1. Добавьте обратный вызов рендеринга.
  2. Обработайте свои team_members_value данные для рендеринга необходимой разметки, сохраните их и вернитесь.
person Pavlo Zhukov    schedule 12.04.2017
comment
он просто показывает мне значение team_member_value, а не img! куда поставить тег img? - person alaa; 12.04.2017
comment
//render there to show your img поместите сюда код рендеринга. markup += '<img src ="' + team_member + '">'; - person Pavlo Zhukov; 12.04.2017
comment
это не работает нормально! Я хочу отобразить одно и то же изображение 3 раза id team_memver_value = 3; Я пытаюсь: markup +='‹img src=images/img.jpg class=avatar alt=Avatar›' но отображается только одно изображение - person alaa; 12.04.2017
comment
посмотри на скрин в моем посте - person alaa; 12.04.2017
comment
Знаете ли вы, как отобразить имя_разработчика (одно из значений базы данных) в качестве заголовка изображения? Я получил имя_разработчика в коде позади и подсчитал их количество в team_members_value. - person alaa; 12.04.2017
comment
@алаа да. Если у вас есть это в data: data, вы можете получить функцию рендеринга с помощью full['developer_name'] - person Pavlo Zhukov; 12.04.2017
comment
Чтобы полностью объяснить проблему, не могли бы вы взглянуть на этот пост: заголовок stackoverflow.com/questions/43346915/ Большое спасибо - person alaa; 12.04.2017