弹出窗口中的Telerik报告不会再次打开

时间:2012-06-19 16:30:33

标签: asp.net-mvc dom telerik-mvc telerik-reporting

我在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中并且需要处理吗?

2 个答案:

答案 0 :(得分:1)

我相信你上面解释的问题正是原因所在。关闭MVC弹出窗口不会释放加载到MVC弹出窗口中的对象。因此,无论是为每个弹出窗口配置还是重新加载报表模块,还是只使用将原始页面中的报表内容导出到弹出窗口,这样您的内容将始终位于父窗口中,弹出窗口将仅用于查看导出的报表数据。

答案 1 :(得分:1)

我知道这个问题差不多有一年的历史了,但是我遇到了同样的问题而且我有一个解决方案,所以我的兄弟们将来会分享这个问题的解决方案。

在我的情况下,我从Action返回整个视图以响应ajaxRequest()。在这种情况下,它还返回与现有文件冲突的所有JS文件,CSS文件等。

当我改变行动以返回部分视图时,一切都像魅力一样。

谢谢你, Sandesh Daddi