锐浪报表在Extjs中的使用 求教

Lucky41 2011-10-08 10:50:54

Ext.define('Test.View.Report', {
extend: 'Ext.window.Window',
title: '报表',
layout: 'fit',
autoShow: true,
modal: true,
formBind: true,
initComponent: function () {
this.items = [
{
xtype: 'box',

autoEl: {
tag: 'div',
html:'<script type=\"text/javascript\">CreateDisplayViewer(\'../../grf/test1.grf\');</script>'
}
}
];
this.callParent(arguments);
}
});


以上是小弟写的代码 想法是在里面嵌入一个div 在里面做报表的展示

现在发现这个div里面只能显示文字内容

比如 html:'这是一个报表' 是可以显示的

但是JS方法却没效果

不知道是哪里不对 请各位高人教下 或者有做过的前辈 请给点例子看看 感激不尽~
...全文
277 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
Lucky41 2011-10-10
  • 打赏
  • 举报
回复
问题解决了 这两天没上 现在才看到 多谢~
Lucky41 2011-10-08
  • 打赏
  • 举报
回复
这个方法是创建报表查询显示插件


//创建报表查询显示插件,详细请查看帮助中的 IGRDisplayViewer
//ReportURL - 获取报表模板的URL
//DataURL - 获取报表数据的URL
function CreateDisplayViewer(ReportURL)
{
document.write('<OBJECT classid="CLSID:E060AFE6-5EFF-4830-B7F0-093ECC08EF37" '+ GridReportCodeBase + ' width="100%" height="100%" id="ReportViewer" VIEWASTEXT>');
document.write('<param name="ReportURL" value="' + ReportURL + '">');
document.write('<param name="DataURL" value="' + DataURL + '">');
document.write('<param name="SerialNo" value="' + SerialNo + '">');
document.write('<param name="UserName" value="' + UserName + '">');
document.write('</OBJECT>');
}

chenlin 2011-10-08
  • 打赏
  • 举报
回复
CreateDisplayViewer(\'../../grf/test1.grf\') 返回的是什么?
chenlin 2011-10-08
  • 打赏
  • 举报
回复
function CreateDisplayViewer(ReportURL)
{
var divValue = '<OBJECT classid="CLSID:E060AFE6-5EFF-4830-B7F0-093ECC08EF37" '+ GridReportCodeBase + ' width="100%" height="100%" id="ReportViewer" VIEWASTEXT>';
divValue= divValue +'<param name="ReportURL" value="' + ReportURL + '">';
divValue =divValue + '<param name="DataURL" value="' + DataURL + '">';
divValue =divValue +'<param name="SerialNo" value="' + SerialNo + '">';
divValue =divValue +'<param name="UserName" value="' + UserName + '">';
divValue =divValue +'</OBJECT>';
return divValue ;
}

上面的函数写错了~
chenlin 2011-10-08
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 chenlin5188 的回复:]

CreateDisplayViewer(\'../../grf/test1.grf\') 返回的是什么?
[/Quote]

document.write肯定不行的吧!

你应该用一个对象把这些内容拼装起来成为一个html片段,然后在你的window的html属性中间才能插入进去。

我写一个你做做看行不行,我不能保证是完全0正确的
function CreateDisplayViewer(ReportURL)
{
document.write('<OBJECT classid="CLSID:E060AFE6-5EFF-4830-B7F0-093ECC08EF37" '+ GridReportCodeBase + ' width="100%" height="100%" id="ReportViewer" VIEWASTEXT>');
var divValue ='<param name="ReportURL" value="' + ReportURL + '">';
divValue =divValue + '<param name="DataURL" value="' + DataURL + '">';
divValue =divValue +'<param name="SerialNo" value="' + SerialNo + '">';
divValue =divValue +'<param name="UserName" value="' + UserName + '">';
divValue =divValue +'</OBJECT>';
return divValue ;
}

然后在你的window的html属性中间写:

html:"<div id='xxx'>"+CreateDisplayViewer(ReportURL)+"</div>"

随手编写的,仅供参考,呵呵~

87,907

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧