0

如何在 ASP.NET 表单上拥有一个控件,该控件像FileUpload控件一样浏览文件,但不是提交整个文件,而是仅提交从女巫找到文件的路径(使用原始文件名)?

4

1 回答 1

0

这是我按照以下论坛帖子的说明制作的解决方法:http ://forums.asp.net/p/1189182/2040139.aspx#2040048

<asp:FileUpload ID="File1" runat="server" onchange="GetFileName();"/> 
<asp:Button ID="Submit" runat="server" Text="Submit" OnClientClick="DisableFileSelector();" />
<asp:HiddenField id="txtFileName" runat="server" />

<script language="javascript" type="text/javascript">
    function GetFileName()
    {
        document.getElementById('<%=txtFileName.ClientID %>').value = document.getElementById('<%=File1.ClientID %>').value;
    }
    function DisableFileSelector() {
        document.getElementById('<%=File1.ClientID %>').disabled = true;
    }
</script>

当然,这只有在启用 JavaScript 时才有效。如果 JavaScript 被禁用,表单将提交文件,但您仍然可以通过在第一次使用之前添加以下代码来保持站点的功能txtFileName

if (File1.HasFile)
{
    txtFileName.Value = File1.PostedFile.FileName;
}
于 2009-03-09T09:27:19.927 回答