`
windows1987
  • 浏览: 17802 次
  • 性别: Icon_minigender_1
  • 来自: 黑龙江
社区版块
存档分类
最新评论

struts1.2和jquery.MultiFile.js实现多文件上传

阅读更多

MultiFile是个不错的多文件上传的插件,在和struts一起用的时候要注意,Struts的ActionForm的getMultipartRequestHandler().getFileElements()方法返回的是一个Hashtable。在默认情况下,在上传多个件的时候,MultiFile会为上传的文件生成同name,这样,Action在取得文件的时候就会有问题,因为Hashtable的key是不能重复的,所以只能得到上传的最后一个文件,所以在上传的时候就需要为这件文件生成不同的key值,如下:

<html:form action="/uploadFile.do" method="post" enctype="multipart/form-data" onsubmit="$(':file').each(function(i){this.name=i;});return true;">
   <html:file property="file" styleClass="multi" maxlength="5"></html:file><br>
   <html:submit /> 
</html:form>

 ActionForm实现如下:

public class FileUploadForm extends ActionForm {

	private FormFile file;

	public FormFile getFile() {
		return file;
	}

	public void setFile(FormFile file) {
		this.file = file;
	}

}

 

Action实现如下:(做了一些简化操作,为了突出重点)

public class FileUploadAction extends Action {

	public ActionForward execute(ActionMapping mapping, ActionForm form,
			HttpServletRequest request, HttpServletResponse response)
			throws Exception {
//得到多个上传文件
			Hashtable forms = (Hashtable) form.getMultipartRequestHandler().getFileElements();
			
			
		
	}
}

 

这样就可以实现多文件上传了。

分享到:
评论
3 楼 JAVACHEN010 2011-10-26  
``你好 最近我也在做多文件上传,第一次用这个JS, 很奇怪的事 我引用了multiFile.js时 提交的时候老是弹出请填写正确信息 的对话框??知道是怎么回事吗?!

1.<html:form action="/uploadFile.do" method="post" enctype="multipart/form-data" <SPAN style="COLOR: #ff0000">onsubmit="$(':file').each(function(i){this.name=i;});return true;"></SPAN>???? 
2 楼 windows1987 2011-07-22  
s284745061 写道
你好,能把你的项目DEMO ,发我一份嘛? 谢谢了 zhgs_2009@163.com 我的环境和你的是一样的,我的确不行

不好意思,这个还真不行,这个是工作中的项目,你说一下问题出在哪吧,我看看能不能帮忙解决一下。
1 楼 s284745061 2011-07-21  
你好,能把你的项目DEMO ,发我一份嘛? 谢谢了 zhgs_2009@163.com 我的环境和你的是一样的,我的确不行

相关推荐

    jquery.MultiFile.js

    jquery.MultiFile.js 多文件上传的js

    jquery.Mulltifile.js和jquery.form.js无刷新上传多个文件

    总的来说,"jquery.MultiFile.js"和"jquery.form.js"的组合使用,为Web开发者提供了一种高效、用户友好的多文件无刷新上传解决方案,极大地提升了用户的交互体验。在实际项目中,开发者可以根据具体需求对这两个库...

    multifile, jQuery多文件选择插件.zip

    multifile, jQuery多文件选择插件 jQuery多文件上传插件概述 多文件( $ 。多文件) 是一个非侵入和关键 jQuery jQuery jQuery帮助你的用户轻松选择多个文件上传。它帮助你实现基本接口,以改善用户的文件选择体验,...

    multifile:jQuery多文件选择插件

    概述 MultiFile($ .MultiFile)是jQuery的一种非干扰性且至关重要的非插件式插件,可帮助您的用户轻松选择多个文件进行上传。 它可以帮助您实现一个基本界面,以改善用户的文件选择体验,同时为开发人员提供3种简单...

    jquery 很不错的多文件上传类

    首先,我们要了解核心文件`jquery.MultiFile.js`,这是实现多文件上传的关键。这个插件扩展了HTML `&lt;input type="file"&gt;`元素的功能,使其支持选择和上传多个文件。通过附加事件监听器和处理函数,它能够检测用户在...

    Multiple File Upload - jQuery文件上传插件

    jQuery文件上传插件,如`jquery.MultiFile.js`,则是基于jQuery构建的,旨在扩展其功能,以支持多文件同时上传。 `jquery.MultiFile.js`插件允许用户在表单中选择多个文件,并将它们作为一批进行上传。它通常与`...

    js_multiple上传文件

    3. **jquery.MultiFile.js**:这个插件专门用于实现多文件选择和上传,用户可以一次选择多个文件进行上传,极大地提高了上传效率。 4. **jquery.blockUI.js**:在文件上传期间,可能需要阻止用户与页面的其他部分...

    jquery上传多个文件

    本案例中,主要涉及的插件是`jquery.MultiFile.js`,它扩展了jQuery的功能,允许用户选择并上传多个文件。此外,还需要一些Java相关的库,如`jquery-1.4.2.min.js`、`commons-io-1.4.jar`和`commons-fileupload-...

    jquery文件下载

    - `jquery.MultiFile.js`:另一个插件,可能用于允许用户在表单中一次性选择多个文件进行上传。 - `jquery.blockUI.js`:插件,用于阻止用户与页面交互,通常在执行长时间操作如加载或保存数据时使用。 - `jquery...

    jquery的三种ajax上传组件

    例如,可以通过阅读`jquery-1.9.1.js`了解jQuery的基本操作,然后在`ajaxfileupload.js`和`jquery.MultiFile.js`中寻找特定的上传逻辑,以便优化或扩展功能。 总之,jQuery的这三种Ajax上传组件为Web开发提供了强大...

    multiple-file-upload

    `jquery.MultiFile.js`是关键的插件文件,它实现了多文件选择和上传的逻辑。通过这个插件,用户可以在文件对话框中选择多个文件,而不仅仅是单个文件。它通常会监听文件输入元素的变化事件,当用户选择新文件后,将...

    可同时上传多个文件的juery插件库

    首先,`jquery.MultiFile.js`是这个库的核心组件,它是一个jQuery插件,允许用户在同一时间选择并上传多个文件。这种功能在现代网页应用中非常常见,例如在线表单、社交媒体平台或者云存储服务。MultiFile插件通过...

    JavaScript上传多个文件

    这个标题为“JavaScript上传多个文件”的资源,显然提供了一个简洁而实用的解决方案,使得开发者能够在不复杂的代码结构下实现这一功能。 首先,我们需要了解HTML5引入的`&lt;input type="file"&gt;`元素的新特性,特别是...

    struts2实现的文件上传下载,上传文件重命名(按时间戳)

    在本项目中,我们关注的是如何利用Struts2实现文件上传并重命名(按时间戳),以及如何进行文件下载。 一、Struts2文件上传 在Struts2中,文件上传主要依赖于`org.apache.struts2.dispatcher.multipart....

    多文件上传解决方案(利用JS)

    在提供的文件中,`example.html`可能是包含多文件上传表单的HTML模板,`multifile.js`和`multifile_compressed.js`则是JavaScript脚本,实现了前端的文件选择、预处理和Ajax上传逻辑。`multifile.js`可能是原始代码...

    Jquery和BigFileUpload实现大文件上传及进度条显示

    在本文中,我们将深入探讨如何使用Jquery和BigFileUpload插件实现大文件上传并同时显示进度条。这个功能在现代Web应用中非常重要,因为它提供了用户友好的交互体验,特别是对于那些需要上传大量数据的场景。 首先,...

    jquery-multifile-plugin:从 code.google.compjquery-multifile-plugin 自动导出

    # ##Overview 这个 jQuery 多文件上传插件 ($.MultiFile) 是一个非干扰性的 jQuery 插件,它可以帮助用户轻松地选择多个文件在您的服务器上快速轻松地上传,同时还提供一些基本的验证功能来帮助开发人员识别简单的...

    Struts上传下载范例

    接着是`struts1和struts2分别实现文件上传下载.rar`,这个文件涵盖了Struts 1和Struts 2两个版本的实现。Struts 1与Struts 2在处理文件上传的方式上有一些不同。在Struts 1中,文件上传通常通过`FileUploadAction`或...

    thinkphp多图片上传.zip

    6. **jQuery图片批量上传预览插件**:这类插件如`jQuery.MultiFile`或`plupload`,允许用户选择多个文件并在上传前预览。它们通常具有错误处理、文件类型限制和文件大小控制等功能,提高了用户体验并降低了服务器的...

Global site tag (gtag.js) - Google Analytics