2011-08-04 14 views
2

私にはライトボックスプラグインがあり、追加オプションが必要です - 画像を印刷してください。問題はクロームで、それが新しいウィンドウ(クローム印刷ページ)を開いたときに、ユーザープレス印刷ボタンに、ということであり、それにwindow.print()javascriptはクロムでプレビューされません

var headstr="<!DOCUMENT html><html xmlns='http://www.w3.org/1999/xhtml'><head><title></title></head><body>"; 
var footstr="</body>"; 
var newstr="<img src=\"[img-location]\" alt='courses' />"; 
document.body.innerHTML=headstr+newstr+footstr; 
window.print(); 
window.location.reload(); 

: は、だから私は、次のようにその画像を印刷少しJS機能をしましたそれは - print preview failedと言います。 FirefoxとIE8ではうまくいきます...

答えて

0

これは問題だとは分かりませんが、無効なhtmlが作成されています。 1つは、<html>タグを閉じないでください。さらに、あなたの体の中にhtmlheadタグを入れています。

+0

私は、htmlタグが、何が間違っている閉じて、コメントを追加しました: - 別名 - 2番目の発言を。ちょうど終了HTMLを置くBTWはまだ助けをdidntします。 – Nir

+0

その構造はページ全体では問題ありませんが、bodyの中に 'document.body.innerHTML'を挿入しています。だから、すでに 'を持っている'とその内部の別の ' etc.' –

+0

を入れている右ああ、私は= headstr + NewStrによってすでに+ footstrを文書化することができますか?それはまた、既存のヘッダーの内容を削除するので、私はそれをしたい – Nir

3

これはあなたの失敗を引き起こしたのかどうかはわかりませんが、入力タイプ= "submit" >からwindow.print()がメソッド= "投稿"(つまりすべてのASP。ネットページ)、その後、Chromeの印刷プレビューが消えます。

解決策は、falseを返すことです。 window.print()の後にページが返信されないようにします。

<html> 
<head> 
</head> 
<body> 
    <form method="post" action="test.html"> 
    <p>This is only a test. Had this been a real emergency....</p> 

    <!--This doesn't work --> 
    <!-- <input type="submit" onclick="JavaScript:window.print();">--> 

    <!--But this does --> 
    <input type="submit" onclick="JavaScript:window.print();return false;"> 

</form> 
</body> 
</html> 
+0

申し訳ありませんが、これは機能しません。 – kta

関連する問題