繁体   English   中英

Asp.net C#上传控件

[英]Asp.net C# upload control

我已经创建了一个图像上传控件,但是我对它的外观并不满意。 我只希望显示的按钮不是按钮左侧的文本框。 有什么方法我可以使用普通的按钮控件或linkbutton控件来打开文件对话框。

浏览器具有极其严格的限制性,可以控制上传输入的样式,以尝试减轻可能由欺骗用户造成的损害。

话虽这么说,你可以做的类似于你要求但你也必须考虑到每个浏览器将上传按钮放在一个不同的位置,你将通过在这里或那里放置隐藏的元素和外观有效地破解风格/功能在所有浏览器中可能不一致。

本文提供了您正在寻找的一些信息。

呈现<input type="file" />方式取决于您使用的浏览器。 查看这篇文章 ,讨论如何使其统一但隐藏实际渲染并拥有自己的渲染。

我在Firefox 4,IE6和IE9中使用了这个简单的示例,但不幸的是它在Chrome 10中不起作用。

<script type="text/javascript">
    $(document).ready(function () {
        var cnt = 1; // for interfering id's
        $('#upload').click(function () {

            // adds a new file-browser upload control and calls the AppendFilesToList with file information
            $("#files").append("<input type=\"file\" id=\"fileupload" + cnt + "\" onchange=\"javascript:AppendFilesToList(this.value);\" style=\"display:none;\" />");
            document.getElementById("fileupload" + cnt).click(); // calls the browsers file-upload dialog

            cnt++;
        });
    });
    // appends file information to a div
    function AppendFilesToList(evt) { $("#listfiles").append(evt + "<br/>"); }
</script>

<div id="files"></div>
<div id="listfiles"></div>

<br />

<input type="button" id="upload" value="Select files" />

但是,您可以查看这些关于样式的帖子: http//www.shauninman.com/archive/2007/09/10/styling_file_inputs_with_css_and_the_domhttp://www.quirksmode.org/dom/inputfile.html

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM