Ext.ux.UploadDialog.Dialog多文件上例子

本文介绍如何使用Ext.ux.UploadDialog组件在前端实现多文件上传功能,包括添加上传事件、设置上传参数及自定义上传成功后的处理。在后端,通过MultipartHttpServletRequest接收文件并进行保存。在上传过程中,可以利用事件回调调整提交参数,例如添加自定义字段。同时讨论了文件上传的重命名策略。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.在jsp页面的添加上传地方添加函数

 Ext.ux.UploadDialog 像ext一样展现给用户震撼的界面:

如图:上传之前

 

上传过程中:

 

强悍吧。怎样使用呢。?

自己去搜索 Ext.ux.UploadDialog.包下载

使用是出来导入必要的ext包还需要

<link rel="stylesheet"  href="Ext.ux.UploadDialog/UploadDialog/css/Ext.ux.UploadDialog.css" />
    <script type="text/javascript" src="Ext.ux.UploadDialog/Ext.ux.UploadDialog.packed.js"></script>

使用很简单 弄个onclick事件 核心代码如下

1.function insertImages()
2.{
3.    dialog = new Ext.ux.UploadDialog.Dialog({
4.          title: '文件上传__上传过程中关闭窗口,不影响上传_wayfoon',
5.          url:wayfoon.MMS.DataPage +'/xxx.action?action=xxx',
6.      
7.          width : 450,
8.          height : 300,
9.          minWidth : 450,
10.          minHeight : 300,
11.          draggable : true,
12.          resizable : true,
13.          //autoCreate: true,   
14.          constraintoviewport: true,
15.          permitted_extensions:['JPG','jpg','jpeg','JPEG','GIF','gif','bmp','BMP'],  
16.          modal: true,
17.          //post_var_name: 'mms',
18.          reset_on_hide: false,
19.          allow_close_on_upload: true,   //关闭上传窗口是否仍然上传文件
20.          upload_autostart: false   //是否自动上传文件
21.    });
22.       
23.    dialog.show();//'show-button'
24.    dialog.on('uploadsuccess', onUploadSuccess);
25.
26.}
提交时,默认提交的文件名是file 你可以修改 post_var_name: 'myfile',

dialog 有很多事件,如下英文。例子中使用了uploadsuccess事件

•filetest - fires before file is added into the queue, parameters:
dialog - reference to dialog
filename - file name
If handler returns false then file will not be queued.
•fileadd - fires when file is added into the queue, parameters:
dialog - reference to dialog
filename - file name
•fileremove - fires when file is removed from the queue, parameters:
dialog - reference to dialog
filename - file name
record - file record
•resetqueue - fires when upload queue is resetted, parameters:
dialog - reference to dialog
•beforefileuploadstart - fires when file as about to start uploading:
dialog - reference to dialog
filename - uploaded file name
record - file record
If handler returns false then file upload will be canceled.
•fileuploadstart - fires when file has started uploading:
dialog - reference to dialog
filename - uploaded file name
record - file record
•uploadsuccess - fires when file is successfuly uploaded, parameters:
dialog - reference to dialog
filename - uploaded file name
data - js-object builded from json-data returned from upload handler response.
record - file record
•uploaderror - fires when file upload error occured, parameters:
dialog - reference to dialog
filename - uploaded file name
data - js-object builded from json-data returned from upload handler response.
record - file record
•uploadfailed - fires when file upload failed, parameters:
dialog - reference to dialog
filename - failed file name
record - file record
•uploadcanceled - fires when file upload canceled, parameters:
dialog - reference to dialog
filename - failed file name
record - file record
•uploadstart - fires when upload process starts, parameters:
dialog - reference to dialog
•uploadstop - fires when upload process stops, parameters:
dialog - reference to dialog
•uploadcomplete - fires when upload process complete (no files to upload left), parameters:
dialog - reference to dialog
注意该多文件上传,每次其实只上传了一个文件,多个文件是分多次上传的。

看到了有很多后台代码采用了多文件 循环读取,只是没有必要的,我们只要当一个文件处理就可以了。


网上很多例子,也只能称为例子,离应用还有点距离,应用的时候,还需要灵活点

比如我们需要传入自己的参数,网上很难找到,其实我们可以在事件中来改变 提交的参数,

采用属性 base_params:{ hehe: "wayfoon" } 来实现,


function onUploadSuccess(dialog, filename, resp_data, record)

 {

你可以改变dialog的某些值

    resp_data 是返回的json数据

}

 

本文来自优快云博客,转载请标明出处:http://blog.youkuaiyun.com/wayfoon322/archive/2008/12/17/3541095.aspx

 

2.后台处理代码

 

 3.文件上传的同时进行重命名

 

 

 

 

Configuration. Most configuration options are inherited from Ext.Window (see ExtJs docs). The added ones are: url - the url where to post uploaded files. base_params - additional post params (default to {}). permitted_extensions - array of file extensions which are permitted to upload (default to []). reset_on_hide - whether to reset upload queue on dialog hide or not (default true). allow_close_on_upload - whether to allow hide/close dialog during upload process (default false). upload_autostart - whether to start upload automaticaly when file added or not (default false). post_var_name - uploaded data POST variable name (defaults to 'file'). Events. filetest - fires before file is added into the queue, parameters: dialog - reference to dialog filename - file name If handler returns false then file will not be queued. fileadd - fires when file is added into the queue, parameters: dialog - reference to dialog filename - file name fileremove - fires when file is removed from the queue, parameters: dialog - reference to dialog filename - file name record - file record resetqueue - fires when upload queue is resetted, parameters: dialog - reference to dialog beforefileuploadstart - fires when file as about to start uploading: dialog - reference to dialog filename - uploaded file name record - file record If handler returns false then file upload will be canceled. fileuploadstart - fires when file has started uploading: dialog - reference to dialog filename - uploaded file name record - file record uploadsuccess - fires when file is successfuly uploaded, parameters: dialog - reference to dialog filename - uploaded file name data - js-object builded from json-data returned from upload handler response. record - file record uploaderror - fires when file upload error occured, parameters: dialog - reference to dialog filename - uploaded file name data - js-object builded from json-data returned from upload handler response. record - file record uploadfailed - fires when file upload failed, parameters: dialog - reference to dialog filename - failed file name record - file record uploadcanceled - fires when file upload canceled, parameters: dialog - reference to dialog filename - failed file name record - file record uploadstart - fires when upload process starts, parameters: dialog - reference to dialog uploadstop - fires when upload process stops, parameters: dialog - reference to dialog uploadcomplete - fires when upload process complete (no files to upload left), parameters: dialog - reference to dialog Public methods Better go see the source. I18n. The class is ready for i18n, override the Ext.ux.UploadDialog.Dialog.prototype.i18n object with your language strings, or just pass i18n object in config. Server side handler. The files in the queue are posted one at a time, the file field name is 'file'. The handler should return json encoded object with following properties:
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值