Условное выделение строк в SharePoint 2016

Я понимаю, что списки SharePoint похожи на Excel, поэтому мне было интересно, можно ли условно выделить целые строки / ячейки на основе текстового значения поля.

У меня есть столбец в списке под названием «Статус» с 4 вариантами (начальный, в процессе, завершенный, ожидающий ресурса разработчика). Я хотел бы выделить эти строки (или даже просто поле статуса) другим цветом, в зависимости от значения статуса.

Это возможно? Ничего не могу найти по этому поводу для SP 2016

Ваше здоровье


person Philayyy    schedule 03.04.2018    source источник


Ответы (1)


Используйте JavaScript, чтобы выделить строку на основе поля статуса:

<script type="text/javascript">
SP.SOD.executeFunc("clienttemplates.js", "SPClientTemplates", function() {

   SPClientTemplates.TemplateManager.RegisterTemplateOverrides({
     OnPostRender: function(ctx) {

       var statusColors =  {
          'initial' : '#FFF1AD',  
          'in progress' : '#FFD800',
          'completed' : '#01DF3A',
          'awaiting developer resource':'#ff0000'
       };

       var rows = ctx.ListData.Row;
       for (var i=0;i<rows.length;i++)
       {
          var status = rows[i]["Status"];
          var rowId = GenerateIIDForListItem(ctx, rows[i]);
          var row = document.getElementById(rowId); 
          row.style.backgroundColor = statusColors[status];
       }
     }
   }); 

});
</script>

И поместите приведенный выше код в веб-часть редактора содержимого на странице представления списка, чтобы строка списка отображалась разным цветом в зависимости от статуса:

введите описание изображения здесь

person Jerry    schedule 09.04.2018