2011-07-12 7 views
3

IE8/IE9、Chrome、FireFoxのすべてのユーザーに適したサイトを構築しています。しかし、私のクライアントはまだIE7を持っているので、IE7でも同様に動作するように依頼しています。 ReportViewerコントロールで何が問題なのかわかりません。どんな助けもありがとう。IE7 ReportViewerコントロール

問題は、私のレポートが設定された高さと幅の外側にあることです。それはjQueryの

jQueryのコード

$(document).ready(function() { 
      var htmlwidth = $('.main').width() - 20; 
      var htmlheight = $(document).height() - $('.header').height() - 45; 
      $('#<%= ReportViewer1.ClientID %>').wrap('<div style="overflow:auto;" />'); 
      $('#<%= ReportViewer1.ClientID %>').parent().css(height, htmlheight); 
      $('#<%= ReportViewer1.ClientID %>').parent().css('width', htmlwidth); 
      $('#<%= ReportViewer1.ClientID %>').css('width', htmlwidth); 
      $('#<%= ReportViewer1.ClientID %>').css(height, htmlheight); 
      $('#<%= ReportViewer1.ClientID %>').parent().css('border', 'solid 1px Black'); 
    }); 

コンテンツ

<asp:ScriptManager ID="scManager" runat="server"></asp:ScriptManager> 
<rsweb:ReportViewer ID="ReportViewer1" runat="server" Height="100%" Width="100%" 
    SizeToReportContent="true" ZoomMode="Percent" AsyncRendering="false" > 
</rsweb:ReportViewer> 

サンプル生成されたブロック{コンテンツ+ jQueryのコードを使用して、私はそれに巻き付けているDIV内滞在していません。 }

<div style="width:500px; overflow:auto; border:solid 1px Black;height:400px;"> 
    <asp:ScriptManager ID="scManager" runat="server"></asp:ScriptManager> 
    <rsweb:ReportViewer ID="ReportViewer1" runat="server" Height="400px" Width="500px" 
     SizeToReportContent="true" ZoomMode="Percent" AsyncRendering="false" > 
    </rsweb:ReportViewer> 
</div> 

答えて

5

IE7オーバーフローの問題に直面しているように見えます。あなたはposition: relative

はあなたのjQueryに次の行を追加します持っている外側のdivを設定し、あなたの問題を解決するには

hereそれについての詳細を読むことができます:

$('#<%= ReportViewer1.ClientID %>').parent().css(position, relative); 

をまたはあなたのラップに以下を追加します( )

$('#<%= ReportViewer1.ClientID %>').wrap('<div style="overflow:auto; position:relative;" />'); 

最終的な出力は次のようになります。

<div style="width:500px; overflow:auto; border:solid 1px Black;height:400px; position:relative;"> 
    <asp:ScriptManager ID="scManager" runat="server"></asp:ScriptManager> 
    <rsweb:ReportViewer ID="ReportViewer1" runat="server" Height="400px" Width="500px" 
     SizeToReportContent="true" ZoomMode="Percent" AsyncRendering="false" > 
    </rsweb:ReportViewer> 
</div> 
+0

ありがとう、私の髪を引き出す時間から私を救った! – Mike

+1

これは、逆コンパチブルモードで実行している場合、IE8にも影響するようです – d4nt

関連する問題