2011-12-12 22 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中顯示!

希望這篇文章能夠對其他人有用。