亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 編程 > ASP > 正文

用XML+FSO+JS實現服務器端文件的選擇效果

2024-05-04 11:07:50
字體:
來源:轉載
供稿:網友
用XML+FSO+JS實現服務器端文件的選擇效果實現代碼,需要的朋友可以參考下
 
 
 

<%
'written by Linzhang Chen ,2003-4-20 
' 轉載請注明出處和保留此版權信息 
response.write "<?xml version=""1.0"" encoding=""GB2312""?>"&chr(13)
response.write "<mediafile>"&chr(13)
folders=request("folder")
if folders="/" then
folders=""
end if
dim count
count=0
folders=replace(folders,"..","")
basefolder="../media/"'基準的文件夾路徑
newfolder=basefolder&folders
Set fso =server.CreateObject("Scripting.FileSystemObject")
set f=fso.getfolder(server.mappath(newfolder))
set sf=f.subfolders
for each fd in sf'返回指定路徑下面的文件夾列表
response.write "<file>"&chr(13)
response.write "<ftype>folder</ftype>"&chr(13)
response.write "<fname>"&fd.name&"</fname>"&chr(13)
response.write "</file>"&chr(13)
count=count+1
next
set sf=nothing
set ff=f.Files
for each fi in ff
fname=fi.name
if instr("asf,wma,wmv",lcase(mid(fname,instrrev(fname,".")+1)))>0 then'設定允許返回的文件類型,防止源碼泄露
response.write "<file>"&chr(13)
response.write "<ftype>file</ftype>"&chr(13)
response.write "<fname>"&fname&"</fname>"&chr(13)
response.write "</file>"&chr(13)
count=count+1
end if
next
'如果該目錄下沒有文件,就發一個空元素
if count=0 then
response.write "<file>"&chr(13)
response.write "<ftype>empty</ftype>"&chr(13)
response.write "<fname>0</fname>"&chr(13)
response.write "</file>"&chr(13)
end if
response.write "</mediafile>"
set ff=nothing
set f=nothing
set fso=nothing
%>
下面就是客戶端的JS的功夫了(selectfile.asp)
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
<HEAD>
<TITLE> 選擇視頻文件 </TITLE>
<style>
td{font-size:9pt}
select{width:210}
.s2{width:250}
</style>
<SCRIPT LANGUAGE="JavaScript">
<!--
/*written by Linzhang Chen ,2003-4-20 
轉載請注明出處和保留此版權信息 */ 
//預裝載圖片
var imgback = new Image();
imgback.src = "images/arrow.gif";
var imgbackgray = new Image();
imgbackgray.src = "images/grayarrow.gif";
var imgfolder = new Image();
imgfolder.src = "images/folder.gif";
var imggrayfolder = new Image();
imggrayfolder.src = "images/grayfolder.gif";
//歷史記錄數組棧
var arrhistory=new Array();
var hisi=0;
//用來確定要返回文件名
function check()
{
if (document.all.filename.value=="")
{
alert("請先選擇文件");
return false;
}
else
{
window.returnValue =document.f1.folder.value+document.all.filename.value;
window.close();
}
}
//取得XML文件的內容
function getuserlist(url)
{ var oXMLDoc = new ActiveXObject('MSXML');
oXMLDoc.url = url;
var ooRoot=oXMLDoc.root;
return ooRoot;
}
//當選中一個文件時,把這個值返回給文本框
function addfile(txt)
{
document.all.filename.value=txt;
}

var first=1;//定義一個全局變量

function userlist(folders,ti)//列出所選框
{document.f1.folder.value=folders; 
filebox.document.body.innerHTML="正在加載文件,請稍侯...";
var strshow="";
var timeoutid=null;
var newfolder="";
var arrfolder=new Array();
var arrff=new Array();
var blankstr="";
var oItem;
//確定歷史狀態
hisi+=ti;
arrhistory[hisi]=folders;
if (hisi==0)
{
arrow.innerHTML="<img src=/"images/grayarrow.gif/">";
}
else
{
arrow.innerHTML="<img src=/"images/arrow.gif/" border=0 style=/"cursor:hand/" onclick=/"userlist('"+arrhistory[hisi-1]+"',-1)/" onmouseover=/"this.src='images/arrow_over.gif'/" onmouseout=/"this.src='images/arrow.gif'/">";
}
//確定當前的文件夾
if (document.f1.folder.value=="")
{
folderid.innerHTML="<img src=/"images/grayfolder.gif/">"
}
else
{newsfolder=checkfolder(document.f1.folder.value)
folderid.innerHTML="<img src=/"images/folder.gif/" border=0 style=/"cursor:hand/" onclick=/"userlist('"+newsfolder+"',1)/" onmouseover=/"this.src='images/folder_over.gif'/" onmouseout=/"this.src='images/folder.gif'/">"
}
//給下拉框賦值
document.all.select.options.length=0;
newfolder=folders;
folderstr=""
var _obj=document.all.select;
var _o=document.createElement("Option");
_o.text="選擇文件夾";
_o.value="";
_obj.add(_o);
if (newfolder!="")
{arrfolder=newfolder.split("/")
for(var i=0;i<arrfolder.length-1;i++)
{blankstr+=" ";
folderstr+=arrfolder[i]+"/";
_o=document.createElement("Option");
_o.text=blankstr+arrfolder[i];
_o.value=folderstr;
_obj.add(_o);

}
}
document.all.select.options[document.all.select.options.length-1].selected=true;
url="getfolder.asp.gl?folder="+folders;
oRoot=getuserlist(url)
strshow="<table class=file cellspacing=0 cellpadding=0>";
len=oRoot.children.length;
if (len==1)
{oItem = oRoot.children.item(0);
if(oItem.children.item(0).text=="empty")
strshow="沒有文件和文件夾了";
else
{
if(oItem.children.item(0).text=="folder")
{
strshow+="<tr><td><A href=/"javascript:parent.userlist('"+folders+oItem.children.item(1).text+"/"+"',1)/"><img src=/"images/mediafolder.gif/" border=0 >"+oItem.children.item(1).text+"</A></td></tr>";
}
else
{
strshow+="<tr><td><a href=/"javascript:parent.addfile('"+oItem.children.item(1).text+"')/" ><img src=/"images/mediafile.gif/" border=0>"+oItem.children.item(1).text+"</A></td></tr>";

}
}
strshow+="</table>"
}
else{
//數據入棧
for(i=0;i<len;i++)
{ oItem = oRoot.children.item(i);
if(oItem.children.item(0).text=="folder")
{
arrff[i]="<A href=/"javascript:parent.userlist('"+folders+oItem.children.item(1).text+"/"+"',1)/"><img src=/"images/mediafolder.gif/" border=0>"+oItem.children.item(1).text+"</A>";
}
else
{
arrff[i]="<A href=/"javascript:parent.addfile('"+oItem.children.item(1).text+"')/"><img src=/"images/mediafile.gif/" border=0 height=12>"+oItem.children.item(1).text+"</A>";

}
}
//取得要輸出的列數
if (len<=6)
{x=1;
y=6;}
else
{x=len/6;
y=6;}
for(var i=0;i<y;i++)
{strshow+="<tr>"
for(var j=0;j<x;j++)
{ponits=j*y+i;
if (ponits>=len)
{
strshow+="<td> </td>";
}
else
{
strshow+="<td>"+arrff[ponits]+"</td>";
}
}
strshow+="</tr>"
}

strshow+="</table>"
}
filebox.document.body.innerHTML=strshow;
}
//-->
</SCRIPT>
<script LANGUAGE="vbscript">
function checkfolder(folderstr)
if (folderstr="" or instr(folderstr,"/")=instrrev(folderstr,"/")) then
checkfolder=""
else
nfolder=left(folderstr,len(folderstr)-1)
checkfolder=left(nfolder,instrrev(nfolder,"/"))
end if
end function
</script>
</HEAD>

<BODY style="margin:0" bgColor=menu onload="javascript:userlist('',0)">
<table width="443" border="0" cellspacing="0">
<tr>
<td height="36"><table width="409" border="0">
<tr>
<td width="73" align="right">查找范圍(<u>I</u>):</td>
<td width="214"><select name="select" id="select" size="1" onchange="javascript:userlist(this.value,1);">
</select></td>
<td width="22" valign="baseline" id="arrow" align=right></td>
<td width="20" valign="middle" id="folderid"></td>
<td width="20" align="left"><img src="images/md.gif" width="16" height="15"></td>
<td width="28" align="left"><img src="images/viewtype.gif" width="23" height="14"></td>
</tr>
</table></td>
</tr>
<tr>
<td height="120"><table width="100%" height="100%" border="0">
<tr>
<td width="9"> </td>
<td >
<iframe src="blank.htm" width=415 height=120 id="filebox"></iframe></td>
<td width="13"> </td>
</tr>
</table></td>
</tr>
<tr>
<td height="60"><table width="100%" border="0">
<FORM METHOD=POST ACTION="" name="f1">
<input type="hidden" name="folder" value="">
<tr> 
<td width="85" align="right">文件名(<u>N</u>): </td>
<td width="254"><input type="text" id="filename" size="34"></td>
<td><button onclick="javascript:return check()"> 打開(<u>O</U>)</button></td>
</tr>
</FORM>
<tr> 
<td align="right">文件類型(<u>T</u>):</td>
<td><select name="select2" class=s2>
<option>流媒體文件(*.asf,*.wmv,*.wma)</option>
</select></td>
<td><input type="button" name="Submit" value=" 取消 " onclick="window.close();"></td>
</tr>
</table></td>
</tr>
</table>
</BODY>
</HTML>

里面還有一個小文件blank.htm用來定義文件和文件夾顯示的樣式
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
<HEAD>
<TITLE> New Document </TITLE>
<style>
td{font-size:9pt}
body{font-size:9pt}
.file A{COLOR: #000000; TEXT-DECORATION: none;font-size:9pt}
.file A:visited{COLOR: #000000; TEXT-DECORATION: none;font-size:9pt}
.file A:hover {COLOR: #000000; TEXT-DECORATION: none;font-size:9pt}
</style>
</HEAD>

<BODY style="margin: 0pt">

</BODY>
</HTML>
調用的時候用以下函數,就可以實現以假亂真的服務器端選擇文件的效果
function selectfile()
{
var arr = showModalDialog("selectfile.asp?temp="+Math.random(), "", "dialogWidth:453px; dialogHeight:252px; status:0;help:1");
if (arr != null) 
{
return arr
}
}
該函數最后返回的是選中的文件名,函數里面所使用的幾張圖片大家就自已從文件選擇框上抓了:)


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
亚洲免费av网址| 欧美成人精品激情在线观看| 欧美激情综合色综合啪啪五月| 在线免费观看羞羞视频一区二区| 最近2019年中文视频免费在线观看| 懂色av一区二区三区| 国产不卡av在线| 久久国产精品亚洲| 国产精品久久久久不卡| 日韩精品视频中文在线观看| 亚洲国产精品专区久久| 国产97在线亚洲| 亚洲精品国精品久久99热| 日韩人体视频一二区| 精品国产乱码久久久久酒店| 亚洲精品福利免费在线观看| 美女av一区二区三区| 欧美激情奇米色| 欧美国产日产韩国视频| 亚洲人午夜精品免费| 91热精品视频| 亚洲精品久久久久久下一站| 美女黄色丝袜一区| 亚洲另类图片色| 欧美成人精品一区二区| 91日本视频在线| 色婷婷成人综合| 国产这里只有精品| 大荫蒂欧美视频另类xxxx| 国产在线精品一区免费香蕉| 中文字幕视频一区二区在线有码| 91久久国产婷婷一区二区| 91精品视频一区| 91精品久久久久久久久久入口| 日韩资源在线观看| 成年无码av片在线| 亚洲国产精品网站| 欧美激情一级精品国产| 亚洲国产欧美一区二区丝袜黑人| 亚洲亚裔videos黑人hd| 国产主播欧美精品| 国产欧美日韩最新| 欧美一区二区三区四区在线| 欧美伊久线香蕉线新在线| 亚洲另类激情图| 精品国产福利在线| 在线精品91av| 亚洲第一免费网站| 久久精品电影网站| 国产精品一区二区三区免费视频| 国产成人精品久久久| 91av在线网站| 国产视频自拍一区| 97精品伊人久久久大香线蕉| 欧美日本亚洲视频| 亚洲最大激情中文字幕| 欧美性极品少妇精品网站| 亚洲理论片在线观看| 欧美在线性爱视频| 精品亚洲va在线va天堂资源站| 亚洲精品女av网站| 亚洲精品乱码久久久久久按摩观| 欧美丰满少妇xxxx| 亚洲欧美国内爽妇网| 国产97在线亚洲| 亚洲精品国产综合区久久久久久久| 91av在线不卡| 欧美精品做受xxx性少妇| 欧美性猛交xxxx乱大交| 日韩精品福利网站| 亚洲国产中文字幕久久网| 亚洲视频在线视频| 欧美极品美女视频网站在线观看免费| 国产精品日韩一区| 中文字幕一区电影| 久久中文字幕一区| 91国语精品自产拍在线观看性色| 国内成人精品视频| 97人洗澡人人免费公开视频碰碰碰| 国产精品视频网站| 国产成人精品视频在线| 国产精品盗摄久久久| 日韩成人在线观看| 中文字幕亚洲天堂| 久久久久久久久国产| 国产精品xxx视频| 2018国产精品视频| 国产精品免费在线免费| 色www亚洲国产张柏芝| 精品日本美女福利在线观看| 午夜精品久久久久久久白皮肤| 一本大道香蕉久在线播放29| 亚洲男人av在线| 午夜精品一区二区三区在线视频| 69av成年福利视频| 国产精品久久久久久中文字| 久久久久久网址| 国产va免费精品高清在线观看| 精品二区三区线观看| 亚洲乱码国产乱码精品精天堂| 久久久久久久久国产| 国产精品视频永久免费播放| 国产日韩在线免费| 色婷婷成人综合| 久久黄色av网站| 97av在线视频| 精品视频久久久久久久| 精品福利在线视频| 国产精品成人va在线观看| 国内成人精品视频| 91久久久久久久久久| 91在线免费视频| 色噜噜国产精品视频一区二区| 久久在线观看视频| 一区二区三区高清国产| 国产精品香蕉国产| 亚洲欧美综合区自拍另类| 国产免费一区二区三区在线观看| 国产综合在线看| 日韩www在线| 中文字幕欧美日韩精品| 久久亚洲国产精品成人av秋霞| 亚洲福利精品在线| 日韩欧美国产激情| 国产在线高清精品| 亚洲一区美女视频在线观看免费| 国产69精品99久久久久久宅男| 亚洲人免费视频| 欧美疯狂xxxx大交乱88av| 久久成人免费视频| 欧美日韩裸体免费视频| 97视频网站入口| 亚洲国产天堂网精品网站| 亚洲精品日韩久久久| 日韩国产中文字幕| 国产精品久久久久久久久免费| 欧美超级免费视 在线| 欧美高清视频免费观看| 98精品国产高清在线xxxx天堂| 久久人人爽人人爽人人片av高请| 欧美成人四级hd版| 日韩激情av在线免费观看| 日韩欧美一区视频| 精品国产一区av| 精品毛片三在线观看| 亚洲人午夜精品| 成人97在线观看视频| 亚洲精品久久久久中文字幕二区| 欧美猛少妇色xxxxx| 欧美视频在线看| 日韩**中文字幕毛片| 亚洲精品v欧美精品v日韩精品| 日韩欧美在线免费观看| 国产精品美女www爽爽爽视频| 日韩精品视频在线免费观看| 综合av色偷偷网| 久久天天躁狠狠躁夜夜躁2014| 国产91久久婷婷一区二区| 欧美日韩999| 欧美激情免费在线| 欧美日韩国产中文字幕| 亚洲综合成人婷婷小说| 91大神在线播放精品| 欧美精品在线观看91|