2011-12-12 70 views
1

我有一个asp.net mvc3项目,它在aspx网页中有一些报告。在2-3周前一切都很好,但现在,当我在FireFox8和Chrome 15中打开报告页面时,报告无法正确显示。ReportViewer无法在Firefox8和Chrome15中显示

在FF8,报告的内容可以被显示,但看起来不加载CSS和报告头控制这个样子的:

enter image description here

在Chrome15,报告的头看起来很好,但内容ISN”显示出来。使用Firebug查看时,我可以看到它有正确的内容。

由于数据可以加载到浏览器,我认为这可能是一个浏览器兼容性问题,我是对吗?

有没有人看到相同的问题?我愿意接受任何建议。

BTW:我的报告查看器的版本是10.0.0.0。

谢谢。

[2011/12/21中编辑] 火狐 后这个数的研究,我已经注意到,当浏览在Firefox中,服务器将捕获的[Microsoft.Reporting.WebForms.HttpHandlerInputException:缺少URL参数:名称]查询字符串OPTYPE = BackImage &版本= 10.0.40219.329 &颜色=%23ECE9D8 &名称= Microsoft.Reporting.WebForms.Icons.toolbar_bk.png; PATH_INFOReserved.ReportViewerWebControl.axd

这可能是为什么火狐无法与正确的CSS显示页面的原因。

我不知道为什么会发生这种情况在Firefox &铬,而在IE中一切都很好。

我发现这个链接显示同样的错误时抛出:http://social.msdn.microsoft.com/Forums/eu/vsreportcontrols/thread/80ce3ee8-e65b-476c-b668-ecc8e83ea73d

但我不知道他是怎么解决这个问题,可以为您或其他人给出了一些提示或示例代码来解决这个问题?

当浏览在Chrome中,我发现报告的数据加载到DOM,并surronded通过使用id = “ReportViewer1_fixedTable”。在该元素内部,嵌入ID为“ReportViewer1_ctl09”的div,如果删除“height:100%”,则可以看到报告。

此链接http://www.apptools.com/examples/tableheight.php,解释了为什么这100%无法正确呈现,但我仍然尝试通过CSS给出固定高度时失败,代码无法粘贴到此处,请参阅this作为参考。

谢谢。

回答

2

在Chrome中,这是“高度= 100%”的问题。

一旦我添加了以下jQuery代码,可以显示报告区域。

$(function() { 
     $("#ReportViewer1_ctl09").css("height", "auto"); 
    }); 

在Firefox中,报告页面引发错误如下:

“Microsoft.Reporting.WebForms.HttpHandlerInputException缺少URL参数:名称”

和查询字符串:“OPTYPE = BackImage &版本= 10.0.40219.329 &颜色=%23ECE9D8 &名称= Microsoft.Reporting.WebForms.Icons.toolbar_bk.png”

根据this篇文章,我认为这是由处理http请求的代理引起的。

我检查了我的请求,在“Request”ojbect的“Brwoser”属性中有一个“FiftyOne ...”。

由于这个项目中不再使用五十一个,我将它从Bin和web配置中删除,然后报告可以在FireFox中显示!

希望这篇文章能够对其他人有用。