在我的ASP.NET页面中,我使用了"FileUpload"控件。整个实现过程已经完成并且按照预期工作,但是...
我不想要"FileUpload"中的TextBox控件。(FileUpload=TextBox+Button)
有没有可能只删除/隐藏TextBox,让Button看起来像LinkButton?
谢谢
有没有可能只删除/隐藏TextBox,让Button看起来像LinkButton?
谢谢
<input type="file" id="selectedFile" style="display: none;" />
<input type="button" value="Browse..." onclick="document.getElementById('selectedFile').click();" />
这肯定会起作用。我在我的项目中尝试过它。它不需要 JavaScript 或 CSS。
FileUpload fileUpload = new FileUpload();
fileUpload.Width = Unit.Pixel(83);
的宽度为83个像素,文本框的宽度为剩余部分。如果您将控件的宽度强制设置为83个像素,则会显示按钮,而文本框不会显示。对于与HTML5相关的Asp.Net问题,您可以使用document.getElementById('<%=ServerControlID.ClientID%>')来解决。
我正在使用的代码
HTML5
<asp:FileUpload ID="FileUpload1" runat="server" Style="display: none;" />
<input type="button" value="Browse" onclick="showBrowseDialog()"/>
Javascript
function showBrowseDialog() {
var fileuploadctrl = document.getElementById('<%=FileUpload1.ClientID%>');
fileuploadctrl.click();
}
适用于Firefox、IE和Chrome浏览器。
不是很行。fileUpload控件由于安全原因被隔离在页面之外,所以无法进行样式设置。使用HTML5可以自己实现文件上传,或者你也可以使用Flash,但除此之外,你只能使用浏览器提供的功能。