实现用File控件同时上传多个文件
2007-08-20 11:19
288 查看
File控件是一个必须结合服务器端功能才能实现的纯客户端控件。
要使得文件上载能够成功,要做到以下几点:
INPUT type=file 元素必须出现在 FORM 元素内。
必须为 INPUT type=file 元素指定 NAME 标签属性的值。
FORM 元素 METHOD 标签属性的值必须设置为 post。
FORM 元素 ENCTYPE 标签属性的值必须设置为 multipart/form-data。
要处理上载到服务器的文件,服务器端进程必须可以处理 multipart/form-data 的提交。例如,Microsoft Posting Acceptor 能够允许 Microsoft Internet Information Server (IIS) 接受文件上载。而在网上也可找到其它的 Common Gateway Interface (CGI) 脚本用于处理 multipart/form-data 提交。
用户选择要上载的文件并提交页面后,该文件作为请求的一部分上载。文件将被完整地缓存在服务器内存中。
File控件一次只能上传一个文件,并且其文件属性值都是只读的。采用File控件同时上传多个文件,实际上是动态生成多个File控件,每选择上传一个文件,隐藏该控件,生成另一个File控件。这里只需要简单的javascript技巧既可以实现,所以不做赘述。
以ASP.NET为例,介绍在服务器端所需要进行的处理。
//获取上传文件列表
HttpFileCollection fileCollection = HttpContext.Current.Request.Files;
//逐个上传每个文件
for (int index = 0; index < HttpContext.Current.Request.Files.Count; index++)
{
HttpPostedFile postedFile = HttpContext.Current.Request.Files[index];
filename = postedFile.FileName;
if (postedFile.FileName != "")
{
postedFile.SaveAs(uploadPath);
}
}
要使得文件上载能够成功,要做到以下几点:
INPUT type=file 元素必须出现在 FORM 元素内。
必须为 INPUT type=file 元素指定 NAME 标签属性的值。
FORM 元素 METHOD 标签属性的值必须设置为 post。
FORM 元素 ENCTYPE 标签属性的值必须设置为 multipart/form-data。
要处理上载到服务器的文件,服务器端进程必须可以处理 multipart/form-data 的提交。例如,Microsoft Posting Acceptor 能够允许 Microsoft Internet Information Server (IIS) 接受文件上载。而在网上也可找到其它的 Common Gateway Interface (CGI) 脚本用于处理 multipart/form-data 提交。
用户选择要上载的文件并提交页面后,该文件作为请求的一部分上载。文件将被完整地缓存在服务器内存中。
File控件一次只能上传一个文件,并且其文件属性值都是只读的。采用File控件同时上传多个文件,实际上是动态生成多个File控件,每选择上传一个文件,隐藏该控件,生成另一个File控件。这里只需要简单的javascript技巧既可以实现,所以不做赘述。
以ASP.NET为例,介绍在服务器端所需要进行的处理。
//获取上传文件列表
HttpFileCollection fileCollection = HttpContext.Current.Request.Files;
//逐个上传每个文件
for (int index = 0; index < HttpContext.Current.Request.Files.Count; index++)
{
HttpPostedFile postedFile = HttpContext.Current.Request.Files[index];
filename = postedFile.FileName;
if (postedFile.FileName != "")
{
postedFile.SaveAs(uploadPath);
}
}
相关文章推荐
- 研究了三天的文件上传(jspsmart实现)file和text表单同时提交的问题
- 免费HTTP上传文件控件WebUploadFile.ocx发布,让实现Word在线编辑器变得容易
- 文件上传(jspsmart实现)file和text表单同时提交的问题
- asp.net html控件的File控件实现多文件上传实例分享
- yii使用activeFileField控件实现上传文件与图片的方法
- 文件上传控件 jQuery-File-Upload在 MVC3中的实现
- 同时实现文件上传input type =file和文本input type=text
- asp.net html控件的File控件实现多文件上传实例分享
- SlickUploadFile控件 实现asp.net文件上传
- 使用jquery MultiFile实现多个文件同时上传
- asp.net,C#,html控件的File控件实现多文件上传简单实例,vs2010
- 隐藏file控件,用button实现文件上传
- SmartUpload实现文件上传时file和表单文本同时提交的问题
- yii使用activeFileField控件实现上传文件与图片的方法
- JSPSmart实现文件上传时file和text表单同时提交的问题
- 研究了三天的文件上传(jspsmart实现)file和text表单同时提交的问题
- 免费HTTP上传文件控件WebUploadFile.ocx发布,让实现Word在线编辑器变得容易
- AjaxUpLoadFile实现多个大文件上传控件及实例代码
- 文件上传(jspsmart实现)file和text表单同时提交的问题
- SpringMVC与ajaxfileupload.js实现多个文件同时上传