javascript 选择文件夹对话框(web)


Posted in Javascript onJuly 07, 2009

没有办法,实践证明最好的解决办法是自己写一个OCX控件,这样就只要注册一下OCX控件就可以了,同时OCX控件的可扩展性非常大,也就是给vc\delphi这些程序的功能引入到web中,其功能可想而知!
这里不说明OCX开发的过程了,给自己写的OCX控件共享一下,希望能给一些朋友提供帮助。
这个OCX控件中提供了一个getFiles()方法,只要获取控件对象,然后调用getFiles()方法就可以获取对应路径下的所有文件,如下图:
javascript 选择文件夹对话框(web)
该控件可以选择任意盘符下的任意文件夹,图中最下面的按钮时web中的input,通过web中的js方法来获取文件列表,OCX
的getFiles()方法返回文件名串,样式如1.jpg;2.jpg;3.jpg,每个文件名中间用“;”链接,在js中使用split方法来分离一下就可以了。
页面代码如下:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
<html xmlns="http://www.w3.org/1999/xhtml"> 
<head> 
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 
<title>无标题文档</title> 
<script type="text/javascript"><!-- 
function show(){ 
var obj=document.getElementById("pathOcx"); 
var str=obj.getFiles(); 
var list=str.split(";"); 
for(var i=0;i<list.length;i++){ 
if(list[i]!=""){ 
alert(list[i]); 
    } 
} 
} 
// --></script> 
</head> <body> 
<OBJECT 
id="pathOcx" 
     classid="clsid:13BF0862-063C-432F-A8DF-07C2823E8562" 
     width=420 
     height=300 
     align=center 
     hspace=0 
     vspace=0 
> 
</OBJECT> 
<br> 
<input type="button" name="Submit" value="显示数据" onClick="show()"> 
</body> 
</html>

这样就可以使用该控件选取任意文件夹了,并且可以通过js获取文件夹中的所有内容,由于篇幅有限,这里不对该OCX更多的功能做说明,下篇准备给OCX增加上传功能,这样既可以上传整个文件夹,而且支持断点续传。

最后注明:OCX使用的时候需要注册控件

注册方法:运行cmd,进入比如OCX控件在C:\123.OCX,在cmd中运行RegSvr32   c:\123.OCX,会提示注册成功,然后就可以在网页中使用了!
打包下载

Javascript 相关文章推荐
javascript编程起步(第一课)
Jan 10 Javascript
javascript 模拟点击广告
Jan 02 Javascript
js FLASH幻灯片字符串中有连接符&的处理方法
Mar 01 Javascript
JavaScript中的onerror事件概述及使用
Apr 01 Javascript
jquery解析xml字符串简单示例
Apr 11 Javascript
JQuery EasyUI的使用
Feb 24 Javascript
Bootstrap实现登录校验表单(带验证码)
Jun 23 Javascript
js实现省份下拉菜单效果
Feb 15 Javascript
jQuery实现选项卡功能(两种方法)
Mar 08 Javascript
js, jQuery实现全选、反选功能
Mar 08 Javascript
vue组件父子间通信详解(三)
Nov 07 Javascript
详解Angular中实现自定义组件的双向绑定的两种方法
Nov 23 Javascript
JavaScript 解析读取XML文档 实例代码
Jul 07 #Javascript
javascript 新浪背投广告实现代码
Jul 07 #Javascript
JavaScript 对象、函数和继承
Jul 07 #Javascript
js 日期转换成中文格式的函数
Jul 07 #Javascript
javascript 面向对象思想 附源码
Jul 07 #Javascript
jquery BS,dialog控件自适应大小
Jul 06 #Javascript
javascript 浏览器判断 绑定事件 arguments 转换数组 数组遍历
Jul 06 #Javascript
You might like
PHP中文编码小技巧
2014/12/25 PHP
thinkPHP查询方式小结
2016/01/09 PHP
PHP的垃圾回收机制代码实例讲解
2021/02/27 PHP
一个javascript参数的小问题
2008/03/02 Javascript
jQuery 解析xml文件
2009/08/09 Javascript
javascript 数字格式化输出的实现代码
2013/12/10 Javascript
JavaScript初学者建议:不要去管浏览器兼容
2014/02/04 Javascript
jquery的live使用注意事项
2014/02/18 Javascript
Javascript基础教程之数据类型 (字符串 String)
2015/01/18 Javascript
js改变透明度实现轮播图的算法
2020/08/24 Javascript
js判断文件格式及大小的简单实例(必看)
2016/10/11 Javascript
浅谈Nodejs中的作用域问题
2016/12/26 NodeJs
js实现增加数字显示的环形进度条效果
2017/02/05 Javascript
js实现显示手机号码效果
2017/03/09 Javascript
input file样式修改以及图片预览删除功能详细概括(推荐)
2017/08/17 Javascript
vue.js组件vue-waterfall-easy实现瀑布流效果
2017/08/22 Javascript
详解vue-cli 快速搭建单页应用之遇到的问题及解决办法
2018/03/01 Javascript
微信小程序页面间传递数组对象方法解析
2019/11/06 Javascript
[59:15]完美世界DOTA2联赛PWL S2 LBZS vs FTD.C 第一场 11.20
2020/11/20 DOTA
python实现从字典中删除元素的方法
2015/05/04 Python
Django Highcharts制作图表
2016/08/27 Python
python爬虫获取京东手机图片的图文教程
2017/12/29 Python
Django中Model的使用方法教程
2018/03/07 Python
python实现定时压缩指定文件夹发送邮件
2020/12/22 Python
如何用python实现一个HTTP连接池
2021/01/14 Python
一个不错的HTML5 Canvas多层点击事件监听实例
2014/04/29 HTML / CSS
HTML5新特性之type=file文件上传功能
2018/02/02 HTML / CSS
吃透移动端 Html5 响应式布局
2019/12/16 HTML / CSS
html5中嵌入视频自动播放的问题解决
2020/05/25 HTML / CSS
全世界最美丽的四星和五星级酒店预订:Prestigia.com
2017/11/15 全球购物
瀑布模型都有哪些优缺点
2014/06/23 面试题
医学专业本科毕业生自我鉴定
2013/12/28 职场文书
社会学专业求职信
2014/07/17 职场文书
中华魂放飞梦想演讲稿
2014/08/26 职场文书
英文升职感谢信
2015/01/23 职场文书
Sleuth+logback 设置traceid 及自定义信息方式
2021/07/26 Java/Android