【HTML】前台页面调出文件另存为对话框几种方法

 我来答
娟叫滴7448
2013-10-28 · TA获得超过107个赞
知道答主
回答量:183
采纳率:50%
帮助的人:55.4万
展开全部
以下便介绍几种实现的思路和方法。 1.调用document.execCommand方法调用JS方法document.execCommand即可在前台页面调出另存为对话框,并将将服务器上存放的文件保存到本地。 这里有个很好的例子:HTML页面另存为对话框DEMO.rar 代码: function getimg() //另存为存放在服务器上图片到本地的方法{ event.returnValue=false; show.window.location.href=imgSrc.src; timer=setInterval(checkload,100)}function checkload(){if(show.readyState!="complete"){//调用document.execCommand方法,'Saveas'表示打开文件另存为对话框命令 show.document.execCommand('SaveAs'); clearInterval(timer)}} 实现效果: 另外部分ie浏览器中,可能会阻止显示内容,点击上方"允许阻止的内容“即可正常运行 2. 调用ActiveX控件实例化一个“MSComDlg.CommonDialog”对象,即可在前台页面调出另存为对话框,与先前Js方法不同,该ActiveX控件还能获取到你选择的本地保存路径。但缺点是客户端需要已经注册“COMDLG32.OCX”,且客户端浏览器对ActiveX安全级别要求不是很高,否则就无法调出另存为对话框。 实例代码: try { OCXResult.Result.value = ""; //实例化一个ActiveX对象 var fd = new ActiveXObject("MSComDlg.CommonDialog"); //设置保存文件类型选项 fd.Filter = "BMP图片|*.bmp"; fd.FilterIndex = 2; fd.fileName="你要保存的默认文件名"; // must setting fd.MaxFileSize = 128; //打开另存为文件对话框 fd.ShowSave(); }catch(e){confirm("当前您的系统尚未注册COMDLG32.OCX\n请先下载注册此控件后); } 附自动向客户端本地系统注册"COMDLG32.OCX"程序 网页文件另存为对话框控件.rar 3.使用像第三方控件厂商提供的web控件(如硕正控件等) 以上就是本人目前所知的前台页面调出另存为对话框的三种方式,如有其它还望大家补充。。。
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式