Условие не работает должным образом в шаблоне столбца KendoUI - PullRequest
0 голосов
/ 10 сентября 2018

Я получаю данные JSON через API и отображаю их в таблице с помощью интерфейса Kendo.

$scope.ReportViewGrid = function ReportViewGrid(jsonData) {
  if (jsonData == null) return;

  var fileName = "ReportView";
  var grid = $("#ReportViewGrid").kendoGrid({
    toolbar: [{
      template: "<input type='button' class='k-button' value='Back' onclick='back()' />"
    }],
    editable: false,
    filterable: true,
    resizable: true,
    pageable: {
      pageSize: 10,
      buttonCount: 5
    },
    columns: jsonData.columns,
    dataSource: {
      data: jsonData.children
    },

  }).data("kendoGrid");
}
<div id="ReportViewGrid"></div>


Выше код показывает данные отлично. В таблице есть несколько столбцов:

-----------------
C1 | C2 | C3 | C4
-----------------
v1 | v2 | v3 | v4
x1 | x2 | x3 |
y1 | y2 | y3 |
z1 | z2 | z3 | z4

Столбец1 связан с использованием шаблона. Но я хочу получить связанные данные, где у меня есть значение в column4, иначе обычный текст. Я попробовал следующий код и попытался перевернуть условие, но ссылки всегда появляются.

...
 if("uName".equalsIgnoreCase(uNameField)){
    template = "#  if (\"#=encodeURI(md5hash)#\".equals(\"\") ) { #"
                    +" <span>#=fileName#</span>"
                    +" # } else{ #"
                    +" <a style=\"cursor: pointer;\" onclick='expand(\"fileDetailForDuplicateFile\",\"#=encodeURI(fileName)#\",\"#=encodeURI(md5hash)#\")'>#=fileName#</a>"
                    +" #} #";
     nodeColumns.setTemplate(template);
 }
 root.addColumns(nodeColumns);
 }
 root.addLinkedColumn("uName");
 Gson gson = new Gson();
 return gson.toJson(root);


Есть ли что-то, что я пропускаю? Любая помощь будет отличной.

1 Ответ

0 голосов
/ 12 сентября 2018

Я нашел это полезным для проверки внутри шаблона с использованием data.xx, например: -

template = "# if(data.md5hash == ''){ #" +
" <span>#=fileName#</span> " +
" #} else {#" +
" <a style=\"cursor: pointer;\" onclick='expand(\"fileDetailForDuplicateFile\",\"#=encodeURI(fileName)#\",\"#=encodeURI(md5hash)#\")'>#=fileName#</a>" +
" # } #";
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...