js点击某个图标或按钮弹出文件选择框
来源:互联网 发布:淘宝内部优惠券秒杀 编辑:程序博客网 时间:2024/06/05 00:33
最近项目需求,不显示一个传统的文件选择,实现一个js点击某个图标或按钮,弹出文件选择框,选择完图片后,回显选择的图片。但是编写的过程中,出现不少问题,我总结一下。
$("#file").trigger("click"); 触发<input type="file" id="file" />的click事件,在ie下trigger事件和其他代码是同步执行的,但是在谷歌和火狐是异步执行的,//其他code如 alert($("#file").attr("value")) 是得不到的。为了让其他浏览器兼容,其实选择完文件后触发的是 file 的 onchange="getFilePath()" ,你就可以在选择完文件后做你自己的业务处理。
说白了,都是trigger事件异步带来的问题。
废话不说了,上代码再说问题。
<HTML><head><script type="text/javascript" src="script/jquery-1.6.2.min.js"></script><script type='text/javascript'> function selectFile(){ //触发 文件选择的click事件 $("#file").trigger("click");//其他code如 alert($("#file").attr("value")) } /* 获取 文件的路径 ,用于测试*/ function getFilePath(){ alert($("#file").attr("value")); }</script></head><body><!-- 给这个input 设置样式隐藏,切忌不可用display控制隐藏,可能不能跨浏览器 --><input type="file" id="file" onchange="getFilePath()" style="filter:alpha(opacity=0);opacity:0;width: 0;height: 0;"/> <button onclick="selectFile();">select file</button><button onclick="getFilePath()">get FilePath</button></body></html>
$("#file").trigger("click"); 触发<input type="file" id="file" />的click事件,在ie下trigger事件和其他代码是同步执行的,但是在谷歌和火狐是异步执行的,//其他code如 alert($("#file").attr("value")) 是得不到的。为了让其他浏览器兼容,其实选择完文件后触发的是 file 的 onchange="getFilePath()" ,你就可以在选择完文件后做你自己的业务处理。
说白了,都是trigger事件异步带来的问题。
0 2
- js点击某个图标或按钮弹出文件选择框
- js点击某个图标或按钮弹出文件选择框
- C#+Emgucv通过点击按钮弹出选择文件对话框
- C#+Emgucv通过点击按钮弹出选择文件对话框
- js 点击input弹出选择框
- 点击按钮,选择文件
- js实现点击按钮弹出上传文件的窗口
- Js 点击按钮 选择文件后 自动上传文件
- 点击按钮弹出框
- 点击按钮弹出文件夹选择框的实现
- asp.net 浏览按钮 asp.net C# 如何点击按钮弹出选择文件对话框
- 点击按钮出现文件选择
- asp.net 点击一个按钮弹出对话框选择文件然后选择文件完成之后就自动上传文件 input(file)
- js实现点击按钮,弹出新窗口
- 实现效果:点击界面某个按钮时候,弹出输入框,锁定背景的效果
- 点击按钮弹出下载框
- 点击工具栏上的图标按钮实现弹出对话框
- 点击图片弹出文件选择框并覆盖原图功能
- VC下执行DOS命令并得到输出
- EJB 会话Bean的生命周期
- Swift数组
- struts2 文件上传 三种方式
- jquery 如何修改itle的内容
- js点击某个图标或按钮弹出文件选择框
- Android:Zbar 解码、ZXing 管理相机的补充(Zbar支持64位)
- Linux常用命令大全
- 升级Xcode7 项目报错汇总
- C# 事物
- shell批量杀进程
- QT经验(一)
- 树
- php操作mysql