blog

フロントエンドの実用的なピュアJS実装は、エクセルを生成してダウンロードするテーブルである!

これ以上言及することなく、コードに進みましょう!...

Sep 27, 2020 · 2 min. read
シェア

前置きはこれくらいにして、コードに移りましょう!

<!DOCTYPE html>
<html>
 <head>
 <meta charset="UTF-8">
 <title></title>
 </head>
 <body>
 <div class="tools">
 <button type="button" class="btn green" id="excell" onclick="clickDown()">フォームをエクスポートする</button>
 </div>
 
 </body>
 <script>
 //フォームを印刷する
 function downLoadExcel (data, fileName) {
 //テーブル・ヘッダーを定義する
 let str = `ユーザー名,時間,座標,ソース,認証時間
`;
 // \t表が科学的記数法やその他の書式を表示しないようにする
 for(let i = 0 ; i < data.length ; i++ ){
 for(let item in data[i]){
 str+=`${data[i][item] + '\t'},`; 
 }
 str+='
';
 }
 //encodeURIComponent厄介なコードを解決する
 let uri = 'data:text/csv;charset=utf-8,\ufeff' + encodeURIComponent(str);
 //これは、aタグを作成することによって達成される
 let link = document.createElement("a");
 link.href = uri;
 //ダウンロードしたファイルに名前をつける
 link.download = `${fileName || 'テーブル・データ'}.csv`;
 document.body.appendChild(link);
 link.click();
 document.body.removeChild(link);
 };
 function clickDown () {
 let tableData = [{
 name: ' ',
 time: 00,
 pre: '',
 source: ' ',
 otherTime: 000
 }, {
 name: '2 ',
 time: 000,
 pre: '',
 source: ' ',
 otherTime: 2000
 }, {
 name: '3 ',
 time: 000,
 pre: '',
 source: ' ',
 otherTime: 2000
 }]
 downLoadExcel(tableData, 'テスト・データ')
 };
 </script>
</html>
Read next

MVC MVP MVVP

モデル層はデータロジックの処理を担当し、一般的にデータベース、ローカルデータ、Bean やその他のコンポーネントへのネットワークアクセスを含みます。 ビュー層は、ビューの表示を処理するための責任、一般的にXMLレイアウトによって、この責任を負うために、基本的なコンポーネントとカスタムビューなどビュー層の補助的な要素として機能します。 コントロール層は、ビジネスロジックの処理を担当します。

Sep 27, 2020 · 2 min read