javascriptを使用してドキュメント内のファイルアップロードのファイル名を取得する
-
05-07-2019 - |
質問
var fu1 = document.getElementById("FileUpload1");
どのようにして id FileUpload1
解決
次のように、 value
プロパティを試してください:
var fu1 = document.getElementById("FileUpload1");
alert("You selected " + fu1.value);
注: FileUpload1
はASP.Netサーバー側FileUploadコントロールのようです。
その場合、 <を使用してIDを取得する必要があります。次のようなcode> ClientID プロパティ:
var fu1 = document.getElementById("<%= FileUpload1.ClientID %>");
他のヒント
google chrome element.valueでは、名前+パスを返しますが、偽のパスを返します。したがって、私の場合、次のようにファイルのname属性を使用しました。
function getFileData(myFile){
var file = myFile.files[0];
var filename = file.name;
}
これはページからの呼び出しです:
<input id="ph1" name="photo" type="file" class="jq_req" onchange="getFileData(this);"/>
document.getElementById(&quot; FileUpload1&quot;)。value を試す/ p>
RaYell、
返された値を解析する必要はありません。 document.getElementById(&quot; FileUpload1&quot;)。value
は、拡張子付きのファイル名のみを返します。
「title」という名前の入力ボックスにアップロードするファイルの名前をコピーしたかったので、これは私にとって便利でした。私のアプリケーションでは、アップロードされたファイルの名前がバックエンドデータベースによって生成されたインデックスに変更され、タイトルがデータベースに保存されます。
試用
var fu1 = document.getElementById("FileUpload1").value;
フォームでこのようなコードを使用して、元のソースアップロードファイル名をキャプチャし、2番目の単純な入力フィールドにコピーできます。これは、ファイルのアップロードファイル名が不変であるため、ユーザーが送信要求で代替のアップロードファイル名を提供できるようにするためです。
<input type="file" id="imgup1" name="imagefile">
onchange="document.getElementsByName('imgfn1')[0].value = document.getElementById('imgup1').value;">
<input type="text" name="imgfn1" value="">
アップロードされたファイル名のみを取得するには、これを使用します
fake_path=document.getElementById('FileUpload1').value
alert(fake_path.split("\\").pop())
FileUpload1
の値には、ファイルの最後の要素を分割してポップすることを避けるために、おそらく望まない偽のパスが含まれています。