ホームページ > ウェブフロントエンド > jsチュートリアル > サーバーとの対話なしで JavaScript を使用してクライアント側でファイルをダウンロードするにはどうすればよいですか?

サーバーとの対話なしで JavaScript を使用してクライアント側でファイルをダウンロードするにはどうすればよいですか?

Mary-Kate Olsen
リリース: 2024-12-29 03:00:11
オリジナル
124 人が閲覧しました

How Can I Download a File Client-Side Using JavaScript Without Server Interaction?

JavaScript を使用してサーバーとの対話なしでファイルをダウンロードする方法

ユーザーがダウンロードできるファイルを作成する場合、通常はセキュリティ上の懸念により、ユーザーのマシンに直接書き込むことができません。ただし、サーバーを介さずにファイルを作成し、ユーザーに保存するように求めることは可能です。

HTML5 ソリューション

HTML5 をサポートするブラウザの場合は、次のコードを使用できます:

function download(filename, text) {
  // Create an anchor element pointing to the file's content
  var element = document.createElement('a');
  element.setAttribute('href', 'data:text/plain;charset=utf-8,' + encodeURIComponent(text));
  element.setAttribute('download', filename);

  // Hide the anchor element
  element.style.display = 'none';

  // Append the element to the body to enable the download
  document.body.appendChild(element);

  // Simulate a click event to trigger the download
  element.click();

  // Remove the anchor element to prevent further interaction
  document.body.removeChild(element);
}
ログイン後にコピー

使用法

この関数を HTML コード内で次のように使用します。

<form onsubmit="download(this['name'].value, this['text'].value)">
  <input type="text" name="name" value="test.txt">
  <textarea name="text"></textarea>
  <input type="submit" value="Download">
</form>
ログイン後にコピー

ユーザーがフォームにファイル名とファイルの内容を入力して「ダウンロード」ボタンをクリックすると、ファイルはサーバーとの対話なしでダウンロードされます。

以上がサーバーとの対話なしで JavaScript を使用してクライアント側でファイルをダウンロードするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート