IE浏览器中选择本地文件源码如下:
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="content-type" content="text/html;charset=utf-8">
<script>
function browseFolder(path) {
try {
debugger;
var Message = "\u8bf7\u9009\u62e9\u6587\u4ef6\u5939"; //选择框提示信息
var Shell = new ActiveXObject("Shell.Application");
//var Folder = Shell.BrowseForFolder(0, Message, 64, 17); //起始目录为:我的电脑
var Folder = Shell.BrowseForFolder(0, Message, 0); //起始目录为:桌面
if (Folder != null) {
Folder = Folder.items(); // 返回 FolderItems 对象
Folder = Folder.item(); // 返回 Folderitem 对象
Folder = Folder.Path; // 返回路径
if (Folder.charAt(Folder.length - 1) != "\\") {
Folder = Folder + "\\";
}
document.getElementById(path).value = Folder;
return Folder;
}
}
catch (e) {
alert('浏览器权限不够,请将可ActiveX控件设为启用!');
}
}
function browseFile() {
var fso = new ActiveXObject("Scripting.FileSystemObject");
var filePath = document.getElementById("path").value;
if(filePath!=""){
var f = fso.GetFolder(filePath);
}
document.getElementById('fileNames').value = bianli(f);
return bianli(f);
}
function bianli(folder){
//取文件夹
var underFolders = new Enumerator(folder.SubFolders);
//取文件
var uploadImgNames1 = "";
var underFiles = new Enumerator(folder.files);
for (;!underFiles.atEnd();underFiles.moveNext()){
var fn = "" + underFiles.item();
//if(lastname(fn)){//验证后缀名是否为图片
uploadImgNames1 += fn + ",";//将文件名用,分割
// i++;
// }
}
for (;!underFolders.atEnd();underFolders.moveNext()){
bianli(underFolders.item());
}
return uploadImgNames1;
}
</script>
</head>
<table>
<tr>
<td>folderbase:</td>
<td><input id="path" type="text" name="path" size="80"></td>
<td><input type=button value="点此选择文件夹" onclick="browseFolder('path')"></td>
</tr>
<tr>
<td>filebase:</td>
<td><input id="fileNames" type="text" name="fileNames" size="80"></td>
<td><input type=button value="点此获取文件夹下的文件路径" onclick="browseFile()"></td>
</tr>
</table>
</html>
此外还需要设置浏览器级别,特别重要的是:1,设置安全站点;2,将“对没有标记为安全的 ActiveX 控件进行初始化和脚本运行”选为启用。
@echo off
echo 系统安装中,请不要关闭这个窗口
mshta vbscript:msgbox("准备开始设置IE安全级别",64,"设置IE安全级别")(window.close)
echo 1001 下载已签名的 ActiveX 控件
echo 1004 下载未签名的 ActiveX 控件
echo 1200 运行 ActiveX 控件和插件
echo 1201 对没有标记为安全的 ActiveX 控件进行初始化和脚本运行
echo 1405 对标记为可安全执行脚本的 ActiveX 控件执行脚本
reg add "HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings\Zones\2" /v 1001 /t REG_DWORD /d 00000000 /f
reg add "HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings\Zones\2" /v 1004 /t REG_DWORD /d 00000000 /f
reg add "HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings\Zones\2" /v 1200 /t REG_DWORD /d 00000000 /f
reg add "HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings\Zones\2" /v 1201 /t REG_DWORD /d 00000000 /f
reg add "HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings\Zones\2" /v 1405 /t REG_DWORD /d 00000000 /f
reg add "HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings\ZoneMap\Domains\com"
echo 安装结束!
pause