私はこれは、ファイル名が元のURLに基づいていることを除いて、完璧に動作HTMLの 'download'属性を使用してダウンロードファイル名を入力することはできますか?
folloowingコードを使用して、.csvファイルとしてデータをダウンロードするには、ファイル名を指定する$(this).attr({
'download': fileName,
'href': csvData,
'target': '_blank'
});
をdownload
属性を使用していますデータが取得されるので、非常に長く複雑になる可能性があります。
ユーザーにファイル名を「プロンプト」することは可能ですか?IOW、ダウンロードリンクをクリックするとWindowsエクスプローラ(またはOS相当)に「Save As」プロンプトが表示され、デフォルト値はfileName
となりますか?
FWIW、fileName
の先頭に疑問符のような「無効な」文字を使用してみましたが、役に立たなかった。私はtarget
属性についても他の値を試しましたが、そこにはサイコロもありませんでした。私が見逃している明白なものがある場合
...もちろん、私は、ファイル名を表示するように私のコードの中にプロンプトを追加することができますし、ユーザーが名前を指定することができますが、
EDIT
例として、それを明確にする、ここでは画像への2つの<A>
のリンクとサンプルWebページだ - 1は、画像を表示し、1はそれをダウンロードします。
<html>
<head>
</head>
<body>
<a href="http://www.userlogos.org/files/logos/pek/stackoverflow.png">Link to image</a>
<br>
<a href="http://www.userlogos.org/files/logos/pek/stackoverflow.png" download="stackoverflow.png">Download image</a>
</body>
</html>
秒1は、直接画像をダウンロードし、 "として"stackoverflow.png"。可能であれば、名前を付けて保存ダイアログを表示して、画像を保存する名前をユーザーが選択できるようにしたいと思います。画像を右クリックして「画像を別名で保存...」を選択した場合と同じです。ブラウザとOSの間で実際に起こっているので、これは可能ではないかもしれませんが、たとえばdownload=?stackoverflow.png"
を指定してMAYBEを指定すると、その名前が表示されることを願っていました。しかし明らかにそうではありません。
この属性を上に配置されていますか?ボタンやリンク? – rsman
これは単なるリンクです。特にない。 リンクをクリックすると、データがダウンロードフォルダにabc.csvとしてダウンロードされます。 – roryhewitt