目前,当您点击Kendo Grid中的链接时,我正在显示模态窗口。以下是我的代码:
{
field:"filename",
title: "File Name",
width: 60,
template: '<a href='javascript:(function() {$("win").kendoWindow();})();'><span id="win">#:filename#</span></a>'
},
现在发生的是,作为json的文件只显示为其文件名,但我需要显示的是文件内的内容。有什么办法可以做到这一点吗?非常感谢任何帮助。
我已尝试<a target="_blank"></a>
在新标签页中打开,但我需要在新的模式窗口中打开它。
答案 0 :(得分:0)
您的模板无效。您无法将纯JavaScript代码添加到字符串中。它不是它的工作方式。您可能在控制台中遇到错误。此外,您的代码中还有其他一些缺陷:
您不应在dom中添加多个具有相同ID的元素,就像您使用<span id='win'></span>
一样。改为改为上课。
如果您在该范围内打开一个窗口,它将会破坏该列的内容。 Check this
我建议的是这段代码:
模板:
template: '<a href="javascript:void(0)" class="open-modal">#:filename#</a>'
点击活动:
$("#grid").on("click", "a.open-modal", function() {
$("<div></div>").appendTo($("#win")).kendoWindow();
});
#win
是您身体中的div
元素。
在点击事件中 - 附加到网格并通过链接的课程.open-modal
进行过滤 - 它只会创建一个新的div
,并将其附加到div#win
并且然后打电话给kendoWindow
。
<强>更新强>
要在展示时让窗口居中,只需使用center()
方法;
要获取所点击行的数据,请从点击的链接中获取tr
,然后使用网格中的dataItem()
方法。