该功能实现了多文件上传功能,点击添加是同时将文件显示在下面的列表。支持删除功能。
using
System.Data;
using
System.Configuration;
using
System.Collections;
using
System.Web;
using
System.Web.Security;
using
System.Web.UI;
using
System.Web.UI.WebControls;
using
System.Web.UI.WebControls.WebParts;
using
System.Web.UI.HtmlControls;
using
System.IO;
using
System.Text.RegularExpressions;

public
partial
class
Default2 : System.Web.UI.Page

{
protected void Page_Load(object sender, EventArgs e)

{
Regex badCharReplace = new Regex(@"^([<>""'%;()&])$");

}
protected void Button2_Click(object sender, EventArgs e)

{

/////附件
HttpFileCollection fileList = HttpContext.Current.Request.Files;
//保存附件
for (int i = 0; i < fileList.Count; i++)

{ ///添加单个附件
HttpPostedFile file = fileList[i];
if (file.FileName.Length <= 0 || file.ContentLength <= 0)

{
break;
}
// 保存附件到硬盘中
file.SaveAs(MapPath("Attachments/" + Path.GetFileName(file.FileName)));

}
}
}












































前台代码
@ Page Language="C#" AutoEventWireup="true" CodeFile="Default2.aspx.cs" Inherits="Default2"
%>

<!
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
runat
="server"
>
<
title
>
Untitled Page
</
title
>

<
script
language
="javascript"
type
="text/javascript"
>
function addFile()

{
//创建输入元素(通用代码)
//添加上传文件按钮
var fileUpLoadbutton = document.createElement("input");
fileUpLoadbutton.setAttribute("type","file");
fileUpLoadbutton.setAttribute("size","50");
fileUpLoadbutton.setAttribute("name","File");
fileUpLoadbutton.setAttribute("class","ButtonCss");
//添加删除按钮
var deleteImgbutton = document.createElement("img");
deleteImgbutton.setAttribute("src","images/Btdelete.gif");
deleteImgbutton.setAttribute("style","width: 38px; height: 20px");
//给

deleteImgbutton.onclick=function(){deleteRow(1,this);};

var lastIndex= document.getElementById('FileList').childNodes.length-1;
if(lastIndex>-1)

{
var hideFile=document.getElementById('FileList').childNodes[lastIndex];
if(hideFile.value=="")

{
return;
}
hideFile.style.display="none";
var cell1 = document.createElement("td");
var cell2 = document.createElement("td");
// var str = hideFile.value;
var myList =new Array();
myList= hideFile.value.split("""");
cell1.innerHTML = myList[myList.length-1];// hideFile.value;
cell2.appendChild(deleteImgbutton);
var row = document.createElement("tr");
row.appendChild(cell1);
row.appendChild(cell2);
var tBody = document.createElement("tbody").appendChild(row);
//识别当前浏览器
if(navigator.appName.indexOf("Explorer") > -1)

{
document.getElementById("FileTable").childNodes[0].appendChild(tBody);
}
else

{
document.getElementById("FileTable").appendChild(tBody);
}
}
document.getElementById('FileList').appendChild(fileUpLoadbutton);
}
function deleteRow(targPos,btnObj)

{
var tabObj=document.getElementById("FileTable");
var fileListLength = document.getElementById('FileList').childNodes.length;
var tabRowsLength = tabObj.rows.length;
for(var i =0;i<tabRowsLength;i++)

{
if(tabObj.getElementsByTagName('img')[i]==btnObj)

{
//删除当前选中行
tabObj.deleteRow(i+targPos);
//获得选中行对应的上传我文件对象
var oldChild = document.getElementById('FileList').childNodes[i];
//删除上传文件对象
document.getElementById('FileList').removeChild(oldChild);
}
}
}
</
script
>
</
head
>
<
body
>
<
form
id
="form1"
runat
="server"
>
<
div
>
<
table
border
="0"
cellpadding
="0"
cellspacing
="0"
height
="26"
width
="100%"
>
<
tr
>
<
td
align
="left"
valign
="middle"
>
<
asp:Button
ID
="Button2"
runat
="server"
OnClick
="Button2_Click"
Text
="提交"
/>
</
td
>
</
tr
>
</
table
>
<
table
border
="0"
cellpadding
="0"
cellspacing
="0"
height
="26"
width
="100%"
>
<
tr
>
<
td
align
="left"
valign
="middle"
>
<
DIV
id
="FileList"
><
input
id
="File1"
runat
="server"
name
="File"
size
="50"
type
="file"
/></
DIV
>
</
td
>
<
td
>
<
input
id
="Button1"
onclick
="addFile()"
size
="26"
style
="height: 26px"
type
="button"
value
="增加附件"
/>
</
td
>
</
tr
>
</
table
>
<
table
style
="width:100%"
id
="FileTable"
>
<
tr
>
<
td
style
="width:80%"
>
FileName
</
td
>
<
td
style
="width:80%"
>
button
</
td
>
</
tr
>
</
table
>
</
div
>
</
form
>
</
body
>
</
html
>




































































































































