我有一个网页,其中包含一个ASP.NET文件上传控件和一个将文件上传到服务器的按钮。现有代码如下所示。
<div runat="server" style="width: 110%">
<asp:FileUpload ID="fileUpload" runat="server" />
<asp:Button ID="BtnFileUpload" runat="server" OnClick="BtnFileUpload_Click" Text="Upload" />
</div>
&#13;
但我们的客户并不希望看到标准文件上传控件的默认外观。他希望我们添加另一个按钮并使用按钮包装文件上传控件,这样每当用户点击按钮时,文件上传对话框窗口就会打开。
由于
答案 0 :(得分:1)
你可以使用jquery做到这一点你可以将fileupload visiblity设置为none并且可以从按钮点击打开fileuploader
<div runat="server" style="width: 110%">
<asp:FileUpload style="display:none" ID="fileUpload" runat="server" />
<asp:Button ID="BtnFileUpload" runat="server" onclick="$('#fileUpload').trigger('click'); return false;" OnClick="BtnFileUpload_Click" Text="Upload" />
</div>
你需要为此引用jquery。
答案 1 :(得分:0)
除了@Kevin Shah的解决方案之外,我还是以这种方式工作:
<asp:FileUpload ID="FileUpload1" runat="server" />
<asp:Button ID="BtnFileUpload" runat="server" OnClientClick="$('#ContentPlaceHolder1_FileUpload1').trigger('click'); return false;" Text="Upload" />
我的网络表单位于MasterPage中,因此我必须在Chrome中调试时查看“查看源代码”以获取正确的元素ID ContentPlaceHolder1_FileUpload1
,而不仅仅是FileUpload1