首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >在JavaScript中打开文件对话框

在JavaScript中打开文件对话框
EN

Stack Overflow用户
提问于 2010-01-12 17:58:55
回答 7查看 409.1K关注 0票数 125

我需要一个解决方案,以显示在超文本标记语言打开的文件对话框,同时单击一个div。单击div时,必须打开打开文件对话框。

我不想将输入文件框显示为HTML页面的一部分。它必须显示在单独的对话框中,该对话框不是网页的一部分。

EN

回答 7

Stack Overflow用户

回答已采纳

发布于 2010-01-12 18:05:25

这里有一个很好的

Fine Uploader demo

它本身就是一个<input type='file' />控件。但是把div放在上面,并应用css样式来获得这种感觉。文件控件的不透明度设置为0,以便在div上单击时显示对话框窗口打开。

票数 57
EN

Stack Overflow用户

发布于 2012-09-15 18:14:01

代码语言:javascript
复制
    $("#logo").css('opacity','0');
    
    $("#select_logo").click(function(e){
       e.preventDefault();
       $("#logo").trigger('click');
    });
代码语言:javascript
复制
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<a href="#" id="select_logo">Select Logo</a> <input type="file" id="logo">

对于IE,添加以下内容:

代码语言:javascript
复制
$("#logo").css('filter','alpha(opacity = 0');
票数 87
EN

Stack Overflow用户

发布于 2014-07-16 16:50:36

实际上,你不需要所有那些不透明,可见性,<input>样式等等的东西,只要看一看:

代码语言:javascript
复制
<a href="#">Just click me.</a>
<script type="text/javascript">
    $("a").click(function() {
        // creating input on-the-fly
        var input = $(document.createElement("input"));
        input.attr("type", "file");
        // add onchange handler if you wish to get the file :)
        input.trigger("click"); // opening dialog
        return false; // avoiding navigation
    });
</script>

jsFiddle上的演示。在Chrome 30.0和Firefox 24.0中测试。然而,在Opera 12.16中不起作用。

票数 46
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/2048026

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档