天天看點

html選擇目錄彈出選擇框,javascript 選擇檔案夾對話框(web)

沒有辦法,實踐證明最好的解決辦法是自己寫一個OCX控件,這樣就隻要注冊一下OCX控件就可以了,同時OCX控件的可擴充性非常大,也就是給vc\delphi這些程式的功能引入到web中,其功能可想而知!

這裡不說明OCX開發的過程了,給自己寫的OCX控件共享一下,希望能給一些朋友提供幫助。

這個OCX控件中提供了一個getFiles()方法,隻要擷取控件對象,然後調用getFiles()方法就可以擷取對應路徑下的所有檔案,如下圖:

html選擇目錄彈出選擇框,javascript 選擇檔案夾對話框(web)

該控件可以選擇任意盤符下的任意檔案夾,圖中最下面的按鈕時web中的input,通過web中的js方法來擷取檔案清單,OCX

的getFiles()方法傳回檔案名串,樣式如1.jpg;2.jpg;3.jpg,每個檔案名中間用“;”連結,在js中使用split方法來分離一下就可以了。

頁面代碼如下:

無标題文檔

function show(){

var obj=document.getElementById("pathOcx");

var str=obj.getFiles();

var list=str.split(";");

for(var i=0;i

if(list[i]!=""){

alert(list[i]);

}

}

}

// -->

id="pathOcx"

classid="clsid:13BF0862-063C-432F-A8DF-07C2823E8562"

width=420

height=300

align=center

hspace=0

vspace=0

>

這樣就可以使用該控件選取任意檔案夾了,并且可以通過js擷取檔案夾中的所有内容,由于篇幅有限,這裡不對該OCX更多的功能做說明,下篇準備給OCX增加上傳功能,這樣既可以上傳整個檔案夾,而且支援斷點續傳。

最後注明:OCX使用的時候需要注冊控件

注冊方法:運作cmd,進入比如OCX控件在C:\123.OCX,在cmd中運作RegSvr32   c:\123.OCX,會提示注冊成功,然後就可以在網頁中使用了!

打包下載下傳