欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

JS+ACTIVEX實現(xiàn)網(wǎng)頁選擇本地目錄路徑對話框

 更新時間:2013年03月18日 16:52:00   作者:  
使用ACTIVEX對象遍歷本地磁盤和目錄,只需網(wǎng)頁啟用相關(guān)ACTIVEX的INTERNET選項即可實現(xiàn)路徑選擇對話框,感興趣的你可以參考下哈希望可以幫助到你

網(wǎng)頁選擇本地目錄路徑對話框,使用ACTIVEX對象遍歷本地磁盤和目錄,只需網(wǎng)頁啟用相關(guān)ACTIVEX的INTERNET選項,對本地瀏覽器的安全性要求不高,簡單易用。

網(wǎng)頁選擇本地目錄路徑對話框樣例

1.打開主頁面"select.html",點擊“選擇路徑”按鈕進入路徑選擇頁面“dir.html”,選取本地目錄路徑

2.路徑選擇頁面“dir.html”初始化后,加載本地磁盤驅(qū)動,然后根據(jù)選擇的磁盤路徑加載其中的目錄。如目錄中存在子目錄,雙擊該目錄列表項進入下一集目錄。

3.點擊“確定”,關(guān)閉選擇路徑頁面"dir.html",將選擇的路徑值返回到主頁面"select.html"文本框上


復制代碼 代碼如下:

/**//*
*初始化,將系統(tǒng)所有的驅(qū)動器放入table_drives列表
*/
window.onload = new function init()
{
var fso, s, n, e, x;
fso = new ActiveXObject("Scripting.FileSystemObject");
e = new Enumerator(fso.Drives);
s = "";
for (; !e.atEnd(); e.moveNext())
{
x = e.item();
s = s + x.DriveLetter;
s += ":";
if (x.DriveType == 3)
n = x.ShareName;
else if (x.IsReady)
n = x.VolumeName;
else
n = "[驅(qū)動器未就緒]";
s += n + ",";
}
var drives = s.split(",");
var tableDrives = document.getElementById("tables_drives");
for ( var i = 0; i < drives.length-1; i++ )
{
var option = document.createElement("OPTION");
drives[i].split(":");
option.value = "["+drives[i].split(":")[0]+":]"+drives[i].split(":")[1];
option.text = "["+drives[i].split(":")[0]+":]"+drives[i].split(":")[1];
tableDrives.add(option);
}
get_drives();
}

/**//*
*tables_drives列表中選中的驅(qū)動器上所有文件夾放入table_folder列表中
*/
function get_drives()
{
var tableDrives = document.getElementById("tables_drives");
var tableFolders = document.getElementById("table_folder");
for ( var i = 0; i < tableDrives.options.length; i++ )
{
if ( tableDrives.options[i].selected == true )
{
var fso, f, fc, s;
var drive = tableDrives.options[i].value.split(":")[0].substring(1,tableDrives.options[i].value.split(":")[0].length);
document.getElementById("backDir").value = drive + ":\\";
fso = new ActiveXObject("Scripting.FileSystemObject");
if (fso.DriveExists(drive))
{
d = fso.GetDrive(drive);
if ( d.IsReady )
{
f = fso.GetFolder(d.RootFolder);
fc = new Enumerator(f.SubFolders);
s = "";
for (;!fc.atEnd(); fc.moveNext())
{
s += fc.item();
s += ",";
}

var len = tableFolders.options.length;
while(len >= 0)
{
tableFolders.options.remove(len);
len--;
}
var option = document.createElement("OPTION");
option.value = drive + ":\\";
option.text = drive + ":\\";
tableFolders.add(option);
var folders = s.split(",");
for ( j = 0; j < folders.length -1; j++)
{
option = document.createElement("OPTION");
option.value = folders[j];
option.text = folders[j];
tableFolders.add(option);
}
}
else
{
alert("無法改變當前內(nèi)容!")
}
}
else
return false;
}
}
}
function get_fileName()
{

var tableFolders = document.getElementById("table_folder");
for ( var i = 0; i < tableFolders.options.length; i++ )
{
if ( tableFolders.options[i].selected == true )
{
var folderpath = tableFolders.options[i].value.substring(0,tableFolders.options[i].value.length);
if ( folderpath.charAt(folderpath.length-1) == "\\" )
{
document.getElementById("backDir").value = folderpath;
}
else
{
document.getElementById("backDir").value = folderpath + "\\";
}
}
}
}
/**//*
*table_folder雙擊選項中的一個選項,就將該文件夾下面的文件夾顯示在table_folder列表中。
*/
function get_file()
{
var tableFolders = document.getElementById("table_folder");
var tableDrives = document.getElementById("tables_drives");
for ( var i = 0; i < tableFolders.options.length; i++ )
{
if ( tableFolders.options[i].selected == true )
{
var fso, f, fc, s;
var folderpath = tableFolders.options[i].value.substring(0,tableFolders.options[i].value.length);
if ( folderpath.charAt(folderpath.length-1) == "\\" )
{
document.getElementById("backDir").value = folderpath;
}
else
{
document.getElementById("backDir").value = folderpath + "\\";
}


fso = new ActiveXObject("Scripting.FileSystemObject");
f = fso.GetFolder(folderpath);
fc = new Enumerator(f.SubFolders);
s = "";
for (;!fc.atEnd(); fc.moveNext())
{
s += fc.item();
s += ",";
}
var len = tableFolders.options.length;
while(len >= 0)
{
tableFolders.options.remove(len);
len--;
}
var opt = "";
var opt1 = "";
for ( j = 0; j < folderpath.split("\\").length; j++ )
{
var option = document.createElement("OPTION");
opt = opt + folderpath.split("\\")[j]+"\\";
if ( j > 0)
{
opt1 = opt;
option.value = opt1.substring(0,opt1.length-1);
option.text = opt1.substring(0,opt1.length-1);
tableFolders.add(option);
}
else
{
option.value = opt;
option.text = opt;
tableFolders.add(option);
}

}
if ( tableFolders.options[0].value == tableFolders.options[1].value )
{
tableFolders.options.remove(1);
}
if ( s != "" )
{
var folders = s.split(",");
for ( j = 0; j < folders.length -1; j++)
{
option = document.createElement("OPTION");
option.value = folders[j];
option.text = folders[j];
tableFolders.add(option);
}
}
}
}
}

相關(guān)文章

  • Unicode 編碼轉(zhuǎn)換器

    Unicode 編碼轉(zhuǎn)換器

    Unicode 編碼轉(zhuǎn)換器...
    2007-01-01
  • 微信小程序?qū)崿F(xiàn)彈出層效果

    微信小程序?qū)崿F(xiàn)彈出層效果

    這篇文章主要為大家詳細介紹了微信小程序?qū)崿F(xiàn)常見彈出層效果 ,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2018-11-11
  • 微信小程序?qū)崿F(xiàn)跑馬燈效果

    微信小程序?qū)崿F(xiàn)跑馬燈效果

    這篇文章主要為大家詳細介紹了微信小程序?qū)崿F(xiàn)跑馬燈效果,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2018-11-11
  • js實現(xiàn)星星閃特效

    js實現(xiàn)星星閃特效

    這篇文章主要為大家詳細介紹了js實現(xiàn)星星閃特效,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-03-03
  • layui實現(xiàn)動態(tài)和靜態(tài)分頁

    layui實現(xiàn)動態(tài)和靜態(tài)分頁

    本篇文章通過實例給大家分享了layui實現(xiàn)動態(tài)和靜態(tài)分頁的詳細方法,以及效果展示,有需要的朋友可以跟著參考學習下。
    2018-04-04
  • JavaScript檢查數(shù)字是否為整數(shù)或浮點數(shù)的方法

    JavaScript檢查數(shù)字是否為整數(shù)或浮點數(shù)的方法

    這篇文章主要介紹了JavaScript檢查數(shù)字是否為整數(shù)或浮點數(shù)的方法,涉及javascript類型判斷的相關(guān)技巧,需要的朋友可以參考下
    2015-06-06
  • JS實現(xiàn)仿QQ面板的手風琴效果折疊菜單代碼

    JS實現(xiàn)仿QQ面板的手風琴效果折疊菜單代碼

    這篇文章主要介紹了JS實現(xiàn)仿QQ面板的手風琴效果折疊菜單代碼,涉及JavaScript基于鼠標事件動態(tài)操作頁面元素樣式的相關(guān)技巧,具有一定參考借鑒價值,需要的朋友可以參考下
    2015-09-09
  • JavaScript對象數(shù)組排序函數(shù)及六個用法

    JavaScript對象數(shù)組排序函數(shù)及六個用法

    本文給大家分享一個用于數(shù)組或者對象的排序的函數(shù)。該函數(shù)可以以任意深度的數(shù)組或者對象的值作為排序基數(shù)對數(shù)組或的元素進行排序
    2015-12-12
  • JS時間戳與日期格式互相轉(zhuǎn)換的簡單方法示例

    JS時間戳與日期格式互相轉(zhuǎn)換的簡單方法示例

    這篇文章主要給大家介紹了關(guān)于JS時間戳與日期格式互相轉(zhuǎn)換的簡單方法,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2020-11-11
  • layui動態(tài)設(shè)置單選按鈕選中效果實例

    layui動態(tài)設(shè)置單選按鈕選中效果實例

    最近在使用layui前端框架,在使用單選按鈕、下拉菜單select、checkbox等控件的時候,往往遇到一些初始化的東西,下面這篇文章主要給大家介紹了關(guān)于layui動態(tài)設(shè)置單選按鈕選中效果的相關(guān)資料,需要的朋友可以參考下
    2023-06-06

最新評論