私は以下を持っています。
<form method="post" action="/send" enctype="multipart/form-data">
<input type="file" name="filename" id="AttachFile">
</form>
ユーザーがアップロードするファイルの名前を変更したい。
ユーザーが「Document.docx」を選択した場合、「Bank-Document.docx」に変更します。
他のファイルではなく、ユーザーが選択したファイルを読みたいのですが、サーバーに送信するときに別の名前を使用するだけです。
私はサーバー側の制御を許可しないアプリケーションの範囲内で作業しているので、理想的にはクライアントでこれを行う必要があります。さらに、の範囲内で機能するには、これが必要form
です。
私は成功せずに次のバリエーションを試しました:
document.getElementById("AttachFile").name = "test.txt"
document.getElementById("AttachFile").files = "test.txt"
document.getElementById("AttachFile").value ="test.txt"
標準のform
送信を使用してファイルの名前を変更することはできません。name
アップロードされたファイルのは、読み取り専用です。これを行うには、サーバー側で行う必要があります。(ファイルアップロードの設計者は、このアップロード時の名前変更のユースケースを考慮していないか、APIで対処する必要があるとは感じていなかったようです。)
しかし、あなたがすることができ、デフォルトのフォームの送信を防止し、代わりにAJAXを介して、プログラム的にそれを提出し、そのないあなたは、ファイルの名前を変更することができます。饅頭の答えを参照してください。
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加