2016-03-30 10 views
-1

JSを使ってターゲットディビジョンを印刷するには、以下の関数を使用しています。これは、クロムを除くすべてのブラウザで正常に動作します。コンソールはエラーをスローします:PrintElemは未定義です。divを印刷するJS関数 - Chromeでは機能しませんか?

function PrintElem(elem) { 
     Popup($(elem).html()); 
    } 

    function Popup(data) { 
     var mywindow = window.open('', 'to_print', 'height=600,width=800'); 
     var html = '<html><head><title></title>' + 
        '</head><body onload="window.focus(); window.print(); window.close()">' + 
        data + 
        '</body></html>'; 
     mywindow.document.write(html); 
     mywindow.document.close(); 
     return true; 
    } 

私は次のようにクリックしonclient関数を呼び出して試してみました:

PrintElement('[id$=divExport]'); 
PrintElement('divExport'); 
PrintElement('#divExport'); 
PrintElement('#ctl00_body_ucJobDetails_divExport'); 
PrintElement('ctl00_body_ucJobDetails_divExport'); 

それはFirefoxで信じられないほどIE 9と11で動作します!

アドバイスをいただければ幸いです。

+0

いくつかのjsfiddleサンプルは素晴らしいでしょう! –

+0

このコードを見ることで、PrintElementが定義されていないと仮定します。 –

+0

'PrintElement'はタイプミスで、' PrintElem'と思われます。 –

答えて

0

機能名はPrintElem()です。しかし、あなたはPrintElement()と呼んでいます。これ以外に、私は他の問題を見ません..

そしてこの行を使用してください。

PrintElem('#divExport');

+0

これが本当であれば、誤植であるためこれを閉じてください。 –

+0

あなたの返事をありがとう...申し訳ありませんが、それはタイプミスでした!はい、実際にPrintElemを使用しています – TAR

+0

@TARはこの 'mywindow.document.close();'のためにこの行の目的は何ですか? –

関連する問題