【解決方法】ASP.Net で Fileupload コントロールの変更時にファイル名を取得する方法は?

プログラミングQA

[ad_1]

プロジェクトでファイル アップロード コントロールを使用しました。
ここで、ユーザーがファイルを選択するとすぐに、Fileupload コントロールで選択されたファイル名をテキスト ボックスに表示したいと考えています。
迅速な返信が必要です。

解決策 3

ファイルアップロードコントロールにはFileNameというプロパティがあり、選択したファイルの名前を取得できます
ただし、postedFile と呼ばれる別のプロパティがあり、これはタイプ httpPostFile オブジェクトのオブジェクトを取得し、次のような驚くべきプロパティを持ちます。

FileUpload obj;// Web フォームに既に存在する
// ページをサーバーに送り返す

C#
if(mypage.IspostedBack)
{
if(obj.hasFile)
{httppostedFile obj2=obj.postedFile;
obj2.fileName
obj2.contentType
}
}

等々..
ありがとう

[Edit]

Ankur: あなたが与えたコードには、ポストバックが必要です。
[/Edit]

解決策 6

JavaScriptを使用して、アップロードコントロールで選択したファイルを表示できます

ASP.NET
<div class="controls">
<asp:fileupload id="filelogo" runat="server" onchange="callme()" xmlns:asp="#unknown">
</asp:fileupload></div>

ここにテキストボックスを追加

XML
<pre lang="HTML"><div class="controls">
<asp:FileUpload ID="filelogo" runat="server" onchange="callme(this)">
</div></pre>
<asp:textbox id="txtUploadedFileName" runat="server" xmlns:asp="#unknown"></asp:textbox>

.aspx ファイルに関数を記述します。

HTML
<script type="text/javascript">
function callme()
  {
   document.getElementById('<%=txtUploadedFileName.ClientID%>').value=document.getElementById('<%=filelogo.ClientID %>').value;
            
  }

</script></script>

アップロード コントロールで任意のファイルを選択すると、そのファイルの名前がテキスト ボックスに反映されます。

解決策 1

C#
function callme(oFile) {
         document.getElementById("TextBox1").value= oFile.value;
       }
XML
<asp:FileUpload ID="FileUpload1" runat="server"  onchange="callme(this)" />
       <asp:TextBox ID="TextBox1" runat="server"   ></asp:TextBox>

[Edit]

Ankur: しかし、それはあなたに完全なパスを与えるでしょう.
JavaScriptを使用して、そこからファイル名を簡単に抽出できます。
[/Edit]

ハッピーコーディング:)

[ad_2]

コメント

タイトルとURLをコピーしました