CreateElements.html
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>上传多个文件</title>
<script language="javascript" type="text/javascript">
<!--
var num=0;
var BeforValue="";
function Creat()
{
num++;
var i;
var str;
var Upf=document.getElementById("Upf");
var file=document.createElement("<input type='file' id='file" + num + "' size='40' onchange='AddFile(this.value)'onkeypress='return false;' onpaste='return false;' onmousedown='return false;' onkeydown='return false;' onfocus='return false;' onclick='BeforValue=this.value' />");
var href=document.createElement("<a href='javascript:void(0)' onclick='remove(" +num +")' id='h"+num+"'>");
var hrefText=document.createTextNode("[删除]");
href.appendChild(hrefText);
var br=document.createElement("<br id='b"+num+"'>");
Upf.appendChild(file);
Upf.appendChild(href);
Upf.appendChild(br);
} function DelFile(num)
{
var obt=document.forms[0].FileValue
var delText=document.getElementById("file"+num).value;
var text=obt.value;
if (text.indexOf("&"+delText)>=0)
delText="&"+delText
text = text.replace(delText, "");
obt.value=text;
} function DelFileValue(value)
{
var obt=document.forms[0].FileValue
var delText=value;
var text=obt.value;
if (text.indexOf("&"+delText)>=0)
delText="&"+delText;
else if (text.indexOf(delText+"&")>=0)
delText=delText+"&";
text = text.replace(delText, "");
obt.value=text;
} function remove(value)
{
DelFile(value);
var Upf=document.getElementById("Upf");
var re=document.getElementById("file"+value);
var re2=document.getElementById("h"+value);
var re3=document.getElementById("b"+value);
Upf.removeChild(re);
Upf.removeChild(re2);
Upf.removeChild(re3); }
function AddFile(value)
{
if (BeforValue !="")
DelFileValue(BeforValue);
var vValue=document.forms[0].FileValue.value;
if (vValue=="")
vValue+=value;
else
vValue+=("&"+value);
document.forms[0].FileValue.value=vValue;
} //-->
</script>
</head> <body>
<form action="MyUpFiles.asp" method="post" >
<div id="Upf"></div>
[<a href="javascript:void(0)" onclick="Creat()">添加一个</a>]<br />
<input type="submit" name="Submit" value="提交"/>
<input name="FileValue" type="hidden" id="FileValue" size="100"/>
</form>
</body>
</html> MyUpFiles.asp
<%
Function GetFileName(ByVal strFile)
If strFile <> "" Then
GetFileName = mid(strFile,InStrRev(strFile, "\")+1)
Else
GetFileName = ""
End If
End Function sValues=request.Form("FileValue")
UpLoadFolder="" if (left(sValues,1)="&") then
sValues=right(sValues,len(sValues)-1)
end if svalue=split(sValues,"&") for i=0 to ubound(svalue)
strFileName = svalue(i)
Response.Write("第"& i+1 & "个上传到:" & (UpLoadFolder & "\" & GetFileName(strFileName))&"<br>")
Set objStream = Server.CreateObject("ADODB.Stream")
objStream.Type = 1 ' adTypeBinary
objStream.Open
objStream.LoadFromFile strFileName
objStream.SaveToFile Server.MapPath(UpLoadFolder & "\" & GetFileName(strFileName)),2
objStream.Close
next
%>
这个上传方法比较笨,不过能通过路径来上传文件,如果你有更好的上传文件类,麻烦发份给我,谢谢了~
最好能给路径就能上传的类~~

  

动态上传多个文件(asp)的更多相关文章

  1. 使用ASP.NET上传多个文件到服务器

    在Email系统中经常会上传多个文件到服务器,用户大多习惯一次上传所有的文件,而不是逐个上传,我们可以使用javascript动态地添加file元素到表单,然后在服务器端处理这些file 效果图如下: ...

  2. asp.net 文件上传,大文件上传。

    新建一个asp.net页面,在工具栏里拖入 FileUpload 上传控件.一个按钮 Button  !    !     ! 进入Button事件 //----------------------- ...

  3. ASP.NET Core WEB API 使用element-ui文件上传组件el-upload执行手动文件文件,并在文件上传后清空文件

    前言: 从开始学习Vue到使用element-ui-admin已经有将近快两年的时间了,在之前的开发中使用element-ui上传组件el-upload都是直接使用文件选取后立即选择上传,今天刚好做了 ...

  4. ASP.NET CORE使用WebUploader对大文件分片上传,并通过ASP.NET CORE SignalR实时反馈后台处理进度给前端展示

    本次,我们来实现一个单个大文件上传,并且把后台对上传文件的处理进度通过ASP.NET CORE SignalR反馈给前端展示,比如上传一个大的zip压缩包文件,后台进行解压缩,并且对压缩包中的文件进行 ...

  5. HTML5文件上传器,纯脚本无插件的客户端文件上传器---Uploader 文件上传器类

    概述 客户端完全基于JavaScript的 浏览器文件上传器,不需要任何浏览器插件,但需要和jQuery框架协同工作,支持超大文件上传,其算法是将一个超大文件切片成N个数据块依次提交给服务 端处理,由 ...

  6. struts2:上传多个文件时实现带进度条、进度详细信息的示范

    上一篇文章讲了上传单个文件与上传多个文件(属性驱动)的例子.本例是上传多个文件(属性驱动),并且显示进度条.进度详细信息的示范. 在文件上传选择界面,允许用户增加.删除选择的文件,且只能上传指定类型的 ...

  7. KindEditor上传本地图片在ASP.NET MVC的配置

    http://www.cnblogs.com/upupto/archive/2010/08/24/1807202.html 本文解决KindEditor上传本地图片在ASP.NET MVC中的配置. ...

  8. NeatUpload 同时选择并上传多个文件

    neatUpload是asp.net 中可以同时上传多个文件的控件,主页:http://neatupload.codeplex.com/. 效果如下图(显示有点不正常...): 使用步骤: 1. 在a ...

  9. Spring Boot之 Controller 接收参数和返回数据总结(包括上传、下载文件)

            一.接收参数(postman发送) 1.form表单 @RequestParam("name") String name 会把传递过来的Form表单中的name对应 ...

随机推荐

  1. leetcode@ [84/85] Largest Rectangle in Histogram & Maximal Rectangle

    https://leetcode.com/problems/largest-rectangle-in-histogram/ https://leetcode.com/problems/maximal- ...

  2. Java文件合并

    文件分割与合并是一个常见需求,比如:上传大文件时,可以先分割成小块,传到服务器后,再进行合并.很多高大上的分布式文件系统(比如:google的GFS.taobao的TFS)里,也是按block为单位, ...

  3. Android实例-TTabControl的使用(XE8+小米2)

    结果:  1.如果直接改变Tab的TabIndex,那样是没有动态效果的.如果想要动态效果需要用到ChangeTabAction1; 2.ChangeTabAction1可以直接为按钮指定Action ...

  4. DTD - XML Building Blocks

    The main building blocks of both XML and HTML documents are elements. The Building Blocks of XML Doc ...

  5. Extjs4---Cannot read property 'addCls' of null

    用MVC做后台管理系统时遇到的问题,关于tab关闭后再打开不显示,或者报错 我在新的tabpanel中加入了一个grid,当我关闭再次打开就会报错Cannot read property 'addCl ...

  6. Unity3D资源存放笔记

    文件夹及路径 昨天记了一篇AssetBundle学习笔记,那么游戏中的各种资源应该如何存放呢? 在网上一阵搜罗,把笔记记一下. 非特殊名称文件夹 非Unity3D指定名称的文件夹中的资源,如果游戏场景 ...

  7. cocos2d-x 触摸偏移

    转自:http://www.cnblogs.com/fjut/archive/2012/04/28/2475693.html //ccTouchBegan必须实现,否则会报错 bool PicScan ...

  8. oracle查找重复记录

    SELECT *FROM t_info aWHERE ((SELECT COUNT(*)          FROM t_info          WHERE Title = a.Title) &g ...

  9. linux修改文件权限和用户组管理小结

    如何在linux下修改组权限 chmod g+r path/file 加读权限 当前目录 chmod -R g+r path/file 加读权限 当前目录以及子目录 g-r 减读权限g+w 加写权限g ...

  10. Codeforces Codeforces Round #319 (Div. 2) C. Vasya and Petya's Game 数学

    C. Vasya and Petya's Game Time Limit: 1 Sec Memory Limit: 256 MB 题目连接 http://codeforces.com/contest/ ...