如何更改 FileUpload 控件 (System.Web.UI.WebControls) 中浏览按钮的文本

Posted

技术标签:

【中文标题】如何更改 FileUpload 控件 (System.Web.UI.WebControls) 中浏览按钮的文本【英文标题】:How to change the Text of the browse button in the FileUpload Control (System.Web.UI.WebControls) 【发布时间】:2010-09-10 19:03:39 【问题描述】:

我想更改 FileUpload 控件 (System.Web.UI.WebControls) 中浏览按钮的文本,而不是我想使用的 [浏览...] 文本 [...]

【问题讨论】:

【参考方案1】:

这是旧的,但想提供另一种解决方案。您可以在标准 html 超链接上使用 jQuery,并在单击 HREF 时触发 asp:FileUpload。只需在设计时隐藏 asp:FileUpload 并以任何您喜欢的方式修改 href。

链接

<a href="#" id="lnkAttachSOW">Attach File</a>

asp:FileUpload

<asp:FileUpload ID="fuSOW" runat="server" style="visibility:hidden;"/>

然后是 jQuery:

$("#lnkAttachSOW").click(function () 
    $("#fuSOW").click();
);

【讨论】:

试过这个。它会打开文件对话框,但不会将文件保存在 FileUpload 控件中,因此 FileUpload.HasFile 始终为 false。【参考方案2】:

出于安全目的,这在技术上是不可能的,因此不会误导用户。

但是,有一些解决方法,尽管这些方法需要使用原始 HTML 而不是 .NET 服务器控件 - 以 http://www.quirksmode.org/dom/inputfile.html 为例。

【讨论】:

【参考方案3】:

这就是我在 .NET 中使用 AsynchFileUpload 和 javascript 的方式...

<asp:Button ID="bUploadPicture" runat="server" Text="Upload Picture"
    OnClientClick="document.getElementById('<%=tFileUpload1.ClientID%>')
        .click();return (false);" />

<div style="display:none;visibility:hidden;">
     <asp:AsyncFileUpload ID="tFileUpload1" runat="server" 
        OnUploadedComplete="tFileUpload1_UploadedComplete" />
</div>

【讨论】:

【参考方案4】:

一些第三方工具提供此选项。例如,我们使用 Telerik Upload 控件:

Changing the text of the Browse/select button

Example of Rad Upload control

【讨论】:

【参考方案5】:

你可以使用另一个按钮和java脚本来触发上传浏览按钮,看看这个可爱简单的解决方案How to change Text in FileUpload control

希望对您有所帮助。

【讨论】:

以上是关于如何更改 FileUpload 控件 (System.Web.UI.WebControls) 中浏览按钮的文本的主要内容,如果未能解决你的问题,请参考以下文章

如何正确使用 ASP.NET FileUpload 控件

用FileUpLoad控件上传图片后,如何将读取出的图片路径存储下来?

如何在 FileUpload 控件中限制文件类型

使用FileUpload控件上传,如何获取原文件名?

用FileUpLoad控件上传图片后,如何将读取出的图片路径存储下来?

服务器端FileUpload上传控件如何禁止手动输入并且不能粘贴.