0

Web アプリでテーブルを描画するために datables プラグインを使用しています。

しかし、ここに問題があります。

この関数を呼び出す印刷ボタンがあります。

function printHTML(clonedDive){
        var iframe = document.createElement("iframe");
        document.body.appendChild(iframe);
    iframe.contentWindow.onunload = function(){
            $("#submenu").show("fast");
            $(".content-secondary").animate({
                             width: '15%'
                         });

            $(".content-primary").animate({
                             width: '83%'
                         });     
     };
      iframe.contentWindow.document.body.appendChild(clonedDive);
      iframe.contentWindow.print();

      document.body.removeChild(iframe); 
}

これは私がこの関数を呼び出す方法です:

printHTML( document.getElementById("results").cloneNode(true));

div は次のようになりresultsます。

<div id="results">
<table id="stops" width="100%" border="1" cellspacing="2" cellpadding="5" >
                <thead>
                    <tr class="even">

                    </tr>
                </thead>

                      <tbody>
                      </tbody>

                     </table>
                     </br>

                     <hr>

                     <p id="title"><b>Map</b></p>
                     <div id="map_find">

                     </div>
</div>

したがって、テーブルは次のように機能します。行をクリックすると、行が強調表示され、マップが表示されます。そのため、印刷ボタンをクリックすると問題が発生します。

印刷プレビューでは表は表示されますが、行が強調表示されず、Google マップも表示されません。最初に初期化されたdivが表示されているようで、行が強調表示されておらず、Googleマップが表示されていません。

私に何ができる?

4

1 に答える 1

1

を使用するように変更することを検討しました@media typesか?

@media print
{
  *{
     visibility: hidden;
  }
  #results{
     visibility: visible;
  }
}

visibility: hiddenで印刷したくないものと印刷したいものすべての可視性を設定できますvisibility: visible

次に、クリックすると次のように呼び出されます。

window.print()

メディア タイプの例

メディアタイプなしの例

于 2012-10-09T19:16:24.473 に答える