<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
    pageEncoding="ISO-8859-1"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Insert title here</title>
<script language="javascript">
/***
path 要显示值的对象id
****/
function browseFolder(path) {
try {
    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(e.message);
}
}</script>
</head>
<body>
        <td>
                            <input type="text" name="path" />
                        </td>
                        <td>
                            <input type="button" onclick="browseFolder('path')"
                                value="选择生成路径" />
                        </td>
</body>
</html>设置信任站点了,也改了设置,能够打开浏览窗口,但是弹出“ document.getElementById(path) 为空或不是对象”求助,另外有没有其他不用更改设置的读取文件夹,看过另外一个人写的实现两中方法,都不行

解决方案 »

  1.   

    你没有为path的ID 啊
    <input type="text" name="path" id='path' /> ?
      

  2.   

    <td><input type="text" id="path" name="path" /></td>
    <td><input type="button" onclick="browseFolder('path')" value="选择生成路径" /></td>-----------------------
    或者:
    document.getElementsByName(path)[0].value = Folder;
    return Folder;
      

  3.   

    你可以考虑file控件+隐藏域。不过处理file的路径也烦,呵呵