Ext.js弹窗上传文件

摘要:
“);}});}否则{Ext.Msg.alert(”系统提示“,”请在上载之前选择一个文件!

1.构建上传组件

var fileUpload = new Ext.FormPanel({
        id:'fileUpload',
        frame:true,
        fileUpload:true,
        items:[{
                    xtype: 'filefield',
                    fieldLabel: '选择文件',
                    labelWidth: 80,
                    msgTarget: 'side',
                    allowBlank: false,
                    margin: '10,10,10,10',
                    anchor: '100%',
                    buttonText:'选择文件'
                }
          ],
          buttonAlign:'center',
          buttons:[{
                  text:'导入',
                handler:function(){
                        if(fileUpload.form.isValid()){
                            
                            fileUpload.form.submit({
                                method:'post',
                                url:'/import',//根据自己系统的需要调用程序处理上传文件
                                params: {
                                    action: 'UploadFile'
                                },
                                success: function(form, action) {
                                   var jsonResult = Ext.JSON.decode(action.response.responseText);
                                   if (jsonResult.success) {
                                     winFielUpload.hide();
                                   }
                                    Ext.Msg.alert('提示', jsonResult.msg);
                                },
                                failure: function() {
                                    Ext.Msg.alert("系统提示", "文件上传失败!");
                                }
                            });

                        }else{
                            Ext.Msg.alert("系统提示","请选择文件后再上传!");
                        }
                    }
                },{
                    text:'取消',
                    handler:function(){
                        winFielUpload.hide();
                    }
                }
         ]
    });

2.构建弹窗,将上传组件引入

var winFielUpload=new Ext.Window({
        id:'win',
        title:'导入数据',
        //****renderTo:'divWindow',//对于window不要使用renderTo属性,只需要调用show方法就可以显示,添加此属性会难以控制其位置
        500,
        closeAction:'hide',//close缺省的动作是从DOM树中移除window并彻底加以销毁, hide隐藏
        height:200,
        layout:'fit',
        autoDestory:true,
        modal:true,
        closeAction:'hide',
        items:[
            fileUpload
        ]
    }).show();

3.java后端接受并返回结果

  //Controller
  @RequestMapping(value = "/import")
  @ResponseBody
  public void import(HttpServletRequest request,HttpServletResponse response){
      try {
         ydlptjService.import(request,response);
  }
catch (Exception e) {    e.printStackTrace();    } }   //ServiceImpl   @Override public void importRyzrz(HttpServletRequest request, HttpServletResponse response) throws Exception { MultiValueMap<String, MultipartFile> multiFileMap = ((MultipartHttpServletRequest) request).getMultiFileMap(); Set<String> strings = multiFileMap.keySet(); for (String key:strings) { List<MultipartFile> multipartFiles = multiFileMap.get(key); for (MultipartFile file:multipartFiles) { //处理MultipartFile代码 } } log.info("导入执行完毕"); JSONObject jo=new JSONObject(); jo.put("success",true); jo.put("errlist",errlist); jo.put("msg","导入成功"); //将结果写出去,格式必须是json 必须要有 success:true 不然不会进入成功的回调函数内 response.getWriter().print(jo); }

免责声明:文章转载自《Ext.js弹窗上传文件》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇谈谈我对sku的理解(2)----数据库设计C#语言Windows服务程序测试网站发送HTTP请求超时解决办法下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

iOS 开发--添加工程

文/Bison(简书作者)原文链接:http://www.jianshu.com/p/dd71e15df5d0著作权归作者所有,转载请联系作者获得授权,并标注“简书作者”。第一部分,配置项目 在此只讲纯手打拉第三方框架的方法,Pods的自行百度哦!不懂Pods的可以点击传送传送门首先我们创建一个工程如下图 53B9D04D-D5E8-47B1-B43D-...

物联网Coap框架 ------- Californium结构分析

  一.Calinfornium简介 Californium 是一款基于Java实现的Coap技术框架,该项目实现了Coap协议的各种请求响应定义,支持CON/NON不同的可靠性传输模。 在同等的Coap协议的技术实现中,Calinfornium框架在众多框架中以性能最优。如下:   二.Californium的项目结构 目前Californium...

Windows phone 8 学习笔记(3) 通信(转)

Windows phone 8 可利用的数据通信方式比较广泛,在硬件支持的前提下,我们可以利用WiFi、蓝牙、临近感应等多种方式。数据交互一般通过套接字来完成,我们将在本文详细的分析。 快速导航:一、WP8套接字二、蓝牙三、NFC四、获取网络状态五、访问web的几种方式 一、WP8套接字 1)创建套接字客户端 Windows phone 8中的套接字并...

几种上传文件组件的性能比较【转载】

近两天来由于项目需要使用上传组件,于是我仔细分析了Cos和FileUpload的源代码,并对它们的性能进行了测试比较,使用2M、20M、45M、200M的上传大小测试三种组件所花费的时间(单位为ms)结果是: 2M   第1次 第2次 第3次 第4次 平均 Cos 297 203 234 245 245 FileUpload 281 312 2...

ExtJS 4.2 教程-06:服务器代理(proxy)

在上一节我们介绍了客户端的几种代理,本节的主要内容是介绍如何使用服务器端代理,将重点介绍AjaxProxy,这是我们最常用的代理方式。 Ajax web应用程序开发过程中,与服务器端交互的技术最常用的就是Ajax了。Ajax 是使用Javascript创建一个HttpRequest,采用异步的方式从服务器获取数据。我们先看一个简单的示例: Ext.onR...

CORS跨域实现思路及相关解决方案

本篇包括以下内容: CORS 定义 CORS 对比 JSONP CORS,BROWSER支持情况 主要用途 Ajax请求跨域资源的异常 CORS 实现思路 安全说明 CORS 几种解决方案 自定义CORSFilter Nginx 配置支持Ajax跨域 支持多域名配置的CORS Filter keyword:cors,跨域,ajax,403,fi...