私は、NodeJS/ExpressとHandlebarsを使用してテンプレート作成のためにWebアプリケーションを構築しようとする初心者です。ノードJS/Express WebアプリケーションでPDFレポートを生成
アプリケーションの一部は、売上請求書の生成を扱っています。私はいくつかのjavascriptコードと一緒にアイテムの追加/削除を処理し、正常に動作する合計などを計算するためにハンドルバーのテンプレートを書いています。
この請求書のPDFフォームは、クライアント側で追加された動的コンテンツを含むNodeJSサーバーで生成する必要があります。
これを実行するにはどうすればよいかわかりません。私はクライアントサイドのPDF生成オプションを評価しましたが、私のユースケースでは望ましくありません。
クライアントサイドのHTMLページに動的要素がある場合、サーバー側でpdfを生成できるかどうか教えてください。
アプリは、このリンクのものと似ていますコードのhttp://www.smarttutorials.net/invoice-system-using-jquery-autocomplete/
動的部分は以下の通りです:
//
var i=$('table tr').length;
$(".addmore").on('click',function(){
html = '<tr>';
html += '<td><input class="case" type="checkbox"/></td>';
html += '<td><input type="text" data-type="productCode" name="itemNo[]" id="itemNo_'+i+'" class="form-control autocomplete_txt" autocomplete="off"></td>';
html += '<td><input type="text" data-type="productName" name="itemName[]" id="itemName_'+i+'" class="form-control autocomplete_txt" autocomplete="off"></td>';
html += '<td><input type="text" name="price[]" id="price_'+i+'" class="form-control changesNo" autocomplete="off" onkeypress="return IsNumeric(event);" ondrop="return false;" onpaste="return false;"></td>';
html += '<td><input type="text" name="quantity[]" id="quantity_'+i+'" class="form-control changesNo" autocomplete="off" onkeypress="return IsNumeric(event);" ondrop="return false;" onpaste="return false;"></td>';
html += '<td><input type="text" name="total[]" id="total_'+i+'" class="form-control totalLinePrice" autocomplete="off" onkeypress="return IsNumeric(event);" ondrop="return false;" onpaste="return false;"></td>';
html += '</tr>';
$('table').append(html);
i++;
});
//が選択を削除し、余分なテーブルの行を追加します表の行
$(".delete").on('click', function() {
$('.case:checkbox:checked').parents("tr").remove();
$('#check_all').prop("checked", false);
});
は、その後、(AJAX)サーバにデータを送るなど..あなたもCSS属性
page-break-after
を使用して改ページを制御することができ、これはあなたがPDF年代に高いウェブページに変換するために使用することができますhttps://www.npmjs.com/package/phantom使用しますPDFKitを使用してください。 –
@Chris G:クイック返信をありがとう。これらの動的に追加された行やHTMLページ全体の唯一のデータをサーバーに送信してpdfを生成する必要があることを意味しますか? –
PDFKitをチェックして、あなたに最適なルートを見つけてください。 –