OKWAVEのAI「あい」が美容・健康の悩みに最適な回答をご提案!
-PR-
解決
済み

強制的にダウンロードさせる方法

  • 暇なときにでも
  • 質問No.177124
  • 閲覧数2251
  • ありがとう数3
  • 気になる数0
  • 回答数2
  • コメント数0

お礼率 74% (121/163)

Excelのデータに直接リンクを貼って、
リンクをクリックすると、Windowsでは勝手にExcelが起動してしまいます。
それを、クリックすると保存先が聞かれてダウンロードさせるだけにしたいのです。

この様な変な質問をしたのは以下の条件が有るからです。
1.データをアーカイブにしてはいけません。
2.右クリックで保存を選択してはいけません。

この動作をJavaScriptを使用して何とか出来ないものでしょうか?
ご存じの方いらっしゃいましたらご教授ください。
よろしくお願いいたします。
通報する
  • 回答数2
  • 気になる
    質問をブックマークします。
    マイページでまとめて確認できます。

質問者が選んだベストアンサー

  • 回答No.1
レベル12

ベストアンサー率 65% (242/372)

クライアントPCにExcelをインストールしない
・・・これが一番簡単な解決方法なんですよね

Excelがインストールされている環境下でも
実現しようとすると、JavaScriptだけでは不可能です。

CGIなどのサーバーサイドのプログラムで

ContentType="application/octet-stream ; name=sample.xls"
Content-Disposition="attachment; filename=sample.xls"

といったヘッダを書き出してファイルをクライアント側に渡してあげないとブラウザはダウンロードしてくれませんので
(上記の例はsample.xlsをダウンロードさせる場合)

参考までに
お礼コメント
megane

お礼率 74% (121/163)

やはりJavaScriptだけでやるには問題がありそうです。CGIでできそうなら何とかなりそうです。

ご回答ありがとうございました。
投稿日時 - 2001-12-01 11:26:53
-PR-
-PR-

その他の回答 (全1件)

  • 回答No.2
レベル7

ベストアンサー率 30% (6/20)

javaScriptのみで実行させるには はじめからjavaScriptの変数に excelの情報を代入しておき ActiveXをつかってexcelファイルを作り そこに値を代入する方法がありますが・・・ かなり回りくどい方法なので 参考までに function test_write() { var WshFile = new ActiveXObject("Sc ...続きを読む
javaScriptのみで実行させるには

はじめからjavaScriptの変数に
excelの情報を代入しておき
ActiveXをつかってexcelファイルを作り
そこに値を代入する方法がありますが・・・

かなり回りくどい方法なので
参考までに

function test_write()
{
var WshFile = new ActiveXObject("Scripting.FileSystemObject");


var file = WshFile.CreateTextFile( "test.csv", true);


file.WriteLine("test");

file.Close();
}
お礼コメント
megane

お礼率 74% (121/163)

す、すごいですね。
やろうと思えば結構方法は見つかるものだと感じました。
参考にさせていただきます。

ご回答ありがとうございました。
投稿日時 - 2001-12-01 11:28:37
このQ&Aのテーマ
このQ&Aで解決しましたか?
関連するQ&A
-PR-
-PR-
こんな書き方もあるよ!この情報は知ってる?あなたの知識を教えて!
このQ&Aにはまだコメントがありません。
あなたの思ったこと、知っていることをここにコメントしてみましょう。

その他の関連するQ&A、テーマをキーワードで探す

キーワードでQ&A、テーマを検索する
-PR-
-PR-
-PR-

特集


いま みんなが気になるQ&A

関連するQ&A

-PR-

ピックアップ

-PR-
ページ先頭へ