我在Telerik MVC弹出窗口中显示Telerik报告,该窗口在客户端代码中实例化。第一次一切正常 - 报告正常显示。
但是如果窗口关闭(原样)并且用户第二次点击打开弹出窗口的页面上的按钮,弹出窗口将打开,但不会显示任何报告内容。这是客户端代码:
$(document).ready(function () {
$('#printButton').click(function () {
var printPopup = $.telerik.window.create({
title: "Resident Account Report",
contentUrl: '/myApp/ReportPages/ReportPage.aspx' + '?rpt=myReport&ID=' + @Model.id,
actions: ["Refresh", "Maximize", "Close"],
height: 600,
width: 1100,
modal: true,
resizable: true,
draggable: true,
scrollable: false,
onRefresh: function () {
var myWindow = $(this).data('tWindow');
myWindow.center().open();
}
});
});
});
问题是因为第一个弹出窗口实例仍然存在于DOM中并且需要处理吗?
答案 0 :(得分:1)
我相信你上面解释的问题正是原因所在。关闭MVC弹出窗口不会释放加载到MVC弹出窗口中的对象。因此,无论是为每个弹出窗口配置还是重新加载报表模块,还是只使用将原始页面中的报表内容导出到弹出窗口,这样您的内容将始终位于父窗口中,弹出窗口将仅用于查看导出的报表数据。
答案 1 :(得分:1)
我知道这个问题差不多有一年的历史了,但是我遇到了同样的问题而且我有一个解决方案,所以我的兄弟们将来会分享这个问题的解决方案。
在我的情况下,我从Action返回整个视图以响应ajaxRequest()。在这种情况下,它还返回与现有文件冲突的所有JS文件,CSS文件等。
当我改变行动以返回部分视图时,一切都像魅力一样。
谢谢你, Sandesh Daddi