日期:2014-05-16  浏览次数:20317 次

怎样把一个控件填充到div层上?
如题:
<button><div id="importfile">导入</div></button>
<input type="file" id="aaa" />
怎么把上传文件的aaa完美的填充到div importfile中,实现效果显示是一个导入按钮,点击导入按钮直接弹出上传文件的对话框?
先在这里谢过了

------解决方案--------------------
<input type="file" id="aaa" display="none"/>

<button><div id="importfile">导入</div></button> 
点击事件 触发input type="file" 的点击事件

FF:
fireEvent("onclick");
IE:
click();
------解决方案--------------------
不用fireEvent,直接click就可以。
HTML code

<!doctype html>
<html>
<head>
<meta charset="utf-8" />
<title> new document </title>
</head>
<body>
<input type="file" id="aaa" style="display:none;" />
<button onclick="test()"><div id="importfile">导入</div></button> 
<script type="text/javascript">
function test() {
    var f = document.getElementById("aaa");
        f.click();
}
</script>
</body>
</html>

------解决方案--------------------
呵呵,这方法应该是这样的:把<input type="file">绝对定位在div之上(设置大小与你需要点击的一样大),然后设置input的通明度为0即可!