Warning: session_start(): open(/home/var/php/8/j/sess_8jno2or33gvi7q8p5mpgvlrgj0, O_RDWR) failed: No such file or directory (2) in /home/users/web07/2/1/0219112/phyokin/devlog/controllers/controller.php on line 15

Warning: session_start(): Failed to read session data: files (path: 2;/home/var/php) in /home/users/web07/2/1/0219112/phyokin/devlog/controllers/controller.php on line 15
devlog
MW211 EXIT

devlog
業務連絡
2021年09月18日
MySQLからSQLiteへ移行しました。
jQuery/CSVダウンロード・別ウインドウ表示
2021年09月17日
jQueryでCSVファイルを生成しダウンロードさせるには以下のような感じ。
┌──────────────────────────────────────┐
│const blob = new Blob([CSVデータ], {'type':'text/csv'});                    │
│$('<a></a>', {                                                              │
│    'href'      :window.URL.createObjectURL(blob),                          │
│    'download'  :'エクスポート.csv',                                        │
│    'target'    :'_blank'                                                   │
│})[0].click();                                                              │
└──────────────────────────────────────┘
アンカーリンクを生成し、クリックするようなイメージになる。

なお、UTF-8のBOMを先頭に付加する場合は以下のような感じとなる。
┌──────────────────────────────────────┐
│const bom = new Uint8Array([0xEF, 0xBB, 0xBF]);                             │
│const blob = new Blob([bom, CSVデータ], {'type':'text/csv'});               │
│$('<a></a>', {                                                              │
│    'href'      :window.URL.createObjectURL(blob),                          │
│    'download'  :'エクスポート.csv',                                        │
│    'target'    :'_blank'                                                   │
│})[0].click();                                                              │
└──────────────────────────────────────┘

これと同じように自ら生成したHTMLを別ウインドウに開くこともできる。
┌──────────────────────────────────────┐
│const blob = new Blob([HTMLソースコード], {'type':'text/html'});            │
│$('<a></a>', {                                                              │
│    'href'      :window.URL.createObjectURL(blob),                          │
│    'target'    :'_blank'                                                   │
│})[0].click();                                                              │
└──────────────────────────────────────┘
分類:jQuery
前へ 1 次へ