KendoUI:如何打开Kendo网格超链接列

时间:2015-12-08 15:57:39

标签: jquery kendo-ui kendo-grid

我有一个带有超链接列的kendoGrid。所需的行为是当我单击该列项时,它会打开一个新选项卡并打开文档。此kendo网格具有文档列表,并将在单击该行时打开文档。我可以通过以下模板打开文件

{ title: "Name", field: "Name", template: kendo.template("<a href='" + constants.serviceUrl + "Document/GetFileContents/#= DocumentId #' onclick='window.open(this.href); return false;'>#= Name #</a>") },

这个模板在打开文档时效果很好但是上面模板的问题在于添加新文档时会出现问题,因为此时我没有DocumentId。

以下是我的想象,但我觉得我在这个模板中遗漏了一些东西:

 { title: "Name", field: "Name", template: '<a href="\\#" onclick="window.open(this.href); views.titleClick(this)" >#=Name#</a>' },

我已经验证这两个标题都是服务层。上面的模板打开了一个新选项卡,但是然后它只是重新加载应用程序而不是打开文档。需要帮助! :)

1 个答案:

答案 0 :(得分:1)

在用英镑符号四处寻找之后,我发现我们可以在Kendo网格模板中编写javascript。所以在传递DocumentId之前,我添加了以检​​查它是否未定义。

以下是工作代码的样子:

  { title: "Name", field: "Name", template: kendo.template("<a href='" + constants.serviceUrl + "Document/GetFileContents/ # if (typeof(DocumentId) === 'undefined'){# -1 #} else {##= DocumentId##}#' onclick='window.open(this.href); return false;'>#= Name #</a>") },