Struts 1.x多文件上传
最近项目用到Struts 1.3,要做一个多文件上传,一次上传多张图片,参考了网上的代码,老是不行,最后终于弄出来了,估计是由于网上的都是基于Struts2的上传,废话不多说,具体步骤为:
1、前台页面
?? 前台页面中,form表单enctype属性设为 "multipart/form-data" ,表单部分内容如下
<input type="file" value="上传图片" name="bugPictures"></input><input type="button" value="添加更多" onclick="addImage(this);"/>
? js如下(用了jQuery,主要是看它的选择器很强大):
?
<script type="text/javascript">var i=1;function addImage(obj){ if(i>4){alert("每次上传图片不允许超过5张");return; } $(obj).parents("tr:first").after("<tr><td></td><td colspan='2'> <input type='file' value='上传图片' class='bugPictures' name='bugPictures'/></td></tr>"); i++;}</script>? 项目中上传的是图片,顺便把图片类型验证的js贴出来
?
$('.bugPictures').each(function(){var reg=/.*([.]jpg|[.]bmp|[.]png|[.]jpeg|[.]gif)$/;if(reg.test($(this).val())==false){$(this).parent().parent().remove();}});?2、ActionForm
?? private List bugPictures;
?? 添加相应的get、set方法
3、Action处理代码
?
for (Object obj : bugForm.getBugPictures()) { FormFile formfile = (FormFile) obj; byte[] data = formfile.getFileData(); //添加你的处理代码}?其实struts 1.x 的文件上传还是很简单的,OK!