2012-02-07 6 views
0

MVC2を使用するバインドされたモデルに投稿しているAJAXフォームがあります。 ActionResultはContentとして返され、AJAXフォームの魔法によってページ上の要素に挿入されます。すべては順調です。MVC - 印刷するAJAX ContentResultを送信する

返されたコンテンツを印刷するボタンが必要です。私はwindow.print()の行に沿ってjavascriptで完全なHTML文書にラップされた結果を返そうとしましたが、もちろんこれは実行されず、ウィンドウ全体が必要ない場合でも実行されます。

エレメントで更新する代わりにContentResultを印刷する最良の方法は何ですか?

+0

私はこれを取得するかどうかはわかりませんが、画面全体を更新する場合は、なぜajaxコールを作成するのですか?返されたコンテンツをどのくらい正確に印刷したいですか? – Roman

+0

ajax呼び出しは、フォームを送信した後でdivに結果を取得することでした。印刷物は思想的なもので、既存のコードを修正して動作させる方法については混乱しました。 jqPrintを使ってdivを印刷することができるように見えます.jqPrintは、私が言いました。 –

答えて

1

このシナリオではjqPrintを使用しました。基本的には、コンテンツをiframeにコピーし、その上でprint()を呼び出します。

+0

完璧に見える!あなたの助けをありがとう。 –

0

ほとんどの場合動作するjqPrintを使ってみましたが、IEで問題を引き起こしていましたが、モデルダイアログを印刷していました。

私は印刷スタイルシートを使用して終了:

http://www.webcredible.co.uk/user-friendly-resources/css/print-stylesheet.shtml

私は基本的に私のダイアログ、DIVまたは何でもそれはあなたが隠そうとしているである以外はページのすべてのコンテンツを隠して。

これは、ブラウザ間で最も一貫した結果を示すソリューションでした。