[ad_1]
HTMLのテキストボックスの値をCSVまたはExcelにエクスポートするにはどうすればよいですか
ローカルコンピュータから使用するHTMLフォームを作成し、フォームデータをCSVファイルに保存したいと考えています。
フォームが送信されるたびに、CSV ファイルに行が追加される必要があります。
これはローカルで実行する必要があるため、PHP や JSP は使用できません。
解決策 2
これがお役に立てば幸いです –
<html> <head> <script language="javascript"> function WriteToFile(passForm) { var fso = new ActiveXObject("Scripting.FileSystemObject"); var fileLoc = "D:\\sample.csv"; var file = fso.CreateTextFile(fileLoc, true); file.writeline(passForm.FirstName.value + ',' + passForm.LastName.value); file.Close(); alert('File created successfully at location: ' + fileLoc); } </script> </head> <body> <p>create a csv file with following details -</p> <form> Type your first name: <input type="text" name="FirstName" size="20"><br> Type your last name: <input type="text" name="LastName" size="20"><br> <input type="button" value="submit" onclick="WriteToFile(this.form)"> </form> </body> </html> </br></br></html>
こちらのリンクも参考にしてください Javascriptを使用したクライアント側でのファイル処理[^] さらなる参考のために。
よろしく、
ニラル・ソニ
解決策 1
WoodLegNamedSmith が出した答えが気に入らないからといって、それが正しいことをやめるわけではありません。
質問をぶつけて、より自分好みの答えを得ようとしても、コンピューターの仕組みは変わりません。
答えをもう一度繰り返すと、JavaScript はクライアント PC のハードドライブにアクセスできず、サーバー上で実行されるコードもアクセスできません。 セキュリティ上の考慮事項により、それは禁止されています。
Excel ファイルや CSV ファイル (またはテキスト ファイル、PDF ファイル、その他の種類のファイル) を PC に直接書き込むことはできません。できることは、それをサーバーに書き込み、ダウンロードして保存できるようにすることだけです。クライアントに対して – それでも、クライアントがデータを保存する場所や、クライアントがデータをダウンロードすることさえ、まったく制御できません。
WoodLegNamedSmith 氏が言うように、ActiveX コントロールを使用して実行できる可能性がありますが、最近ではこれらのコントロールがどの PC にもインストールされる可能性は非常に低いです。
解決策 3
また、有効期限が無期限の Cookie を作成し、それを疑似データベースとして使用して、テキスト ファイルの生成に使用できる CSV 形式のテキスト ブロックを生成することもできます。 その後、永続性を保証できる場合は毎回 Cookie をリロードするか、Web ページをローカルで開くときに保存された CSV を解析することができます。 これは作業を始めるのに役立ちます。
コードは以下から取得しました: JavaScript:ファイルを作成して保存する – コードログ[^]; クレジット: Awesomeness01
function download(text, name, type) { var a = document.getElementById("a"); var file = new Blob([text], {type: type}); a.href = URL.createObjectURL(file); a.download = name; } <a href="" id="a">click here to download your file</a> <button onclick="download('file text', 'myfilename.txt', 'text/plain')">Create file</button>
[ad_2]
コメント