最近有项目使用https,原使用的上传控件uploadify好好的功能不能用了,分析主要原因是swf上传在ssl认证上有点问题。在本机模拟了ssl证书,经测试发现只有IE不行,IE上传到服务器的文件大小都是0,而firefox、chrome都可以正常使用。
为解决https下文件上传问题,改用了jquery-file-upload控件。功能用的比较简单,每上传一个文件,在下面列表上新增一行数据,每一行数据可以有按钮点击上传,能显示上传进度,支持回调
<div> <div> <!-- The file input field used as target for the file upload widget --> <input id="fileupload" type="file" name="files[]" multiple> </div> <!-- The container for the uploaded files --> <table id="files" class="files" style="width:100%"></table> </div>
$('#fileupload').fileupload({ url:'/uploadify/UploadServlet', dataType: 'json', progress: function (e, data) { var progress = parseInt(data.loaded / data.total * 100, 10); data.context.text('Uploading '+progress + '%'); }, add: function (e, data) { var $tr = $("<tr/>"); $("<td/>").css("width","60%").text(data.files[0].name).appendTo($tr); $("<td/>").css("width","40%").append($('<button/>').text('Upload').click(function () { data.context = $('<p/>').text('Uploading').replaceAll($(this)); data.submit(); })).appendTo($tr); data.context = $tr.appendTo($('#files')); }, done: function (e, data) { //data.result即后台返回的json数组 data.context.text('Finished'); alert(data.files[0].name+":dosomething!"); } });
效果如下图
这里碰到两个问题,1)IE8上传的文件file.getName()获取到的文件名带有全路径,这一点可以在代码层判断处理一下;2) IE10以下不支持返回json数据,如果设置response.setContentType("application/json") 会导致response写的json数据在IE下显示下载json文件,而直接设置成response.setContentType("text/html;charset=UTF-8")就可以了。
相关推荐
本学习笔记将涵盖前端控制器、文件上传、异常处理以及开发过程中的心得小结。 1. **前端控制器(DispatcherServlet)** 前端控制器是SpringMVC的核心组件,负责接收所有HTTP请求,然后根据请求的类型和映射规则...
这个“vue仿小红书项目前后端源码.zip”文件包含了一个使用Vue.js模仿小红书应用的完整项目,包括前端和后端代码。小红书是一个知名的社交媒体平台,用户可以分享购物心得、生活瞬间以及各种实用信息。通过分析这个...
【微信小程序】是一种轻量级的应用开发平台,它允许开发者在微信内构建无需下载安装即可使用的应用程序。微信小程序的优势在于其便捷性,用户可以通过扫一扫或搜索快速启动,减少了传统APP的下载安装步骤,提升了...
本心得将详细介绍BookStore项目的架构设计、关键技术组件以及具体实现细节。 #### 前台功能模块 - **图书浏览**:用户可以在网站上浏览各类图书信息。 - **图书查询**:用户可以根据关键词进行图书搜索。 - **...
这表明模板是为教育行业的后台系统定制的,提供了适用于各种培训场景的界面布局和功能组件。HTML是指超文本标记语言,是网页开发的基础,用于描述网页内容和结构。 在描述部分,列出了该模板涵盖的主要功能模块: ...
三年.net开发转前端已经四个月了,前端主要用webpack+vue,由于后端转过来的,前端不够系统,希望分享下开发心得与园友一起学习。 图片的上传之前都是用的插件(ajaxupload),或者传统上传图片的方式,各有利弊:...
Uploadify是一个结合了Flash技术和jQuery的文件上传组件,它允许用户以更友好的方式在网页上实现文件上传。 首先,了解Uploadify的基本构成。Uploadify主要由两部分组成:一个Flash文件(uploadify.swf)和一个基于...
- **上传图片**:通过配置文件上传处理器,支持图片等文件的上传。 - **JSON数据交互**:SpringMVC支持JSON数据的序列化和反序列化,便于与Ajax等前端技术结合。 - **RESTful支持**:遵循RESTful风格的URL设计,提高...
7. **微信小程序组件与事件处理**:微信小程序提供了丰富的内置组件,如按钮、列表等,学生需要学会如何利用这些组件创建界面,处理组件间的传值和事件响应,如菜品选择、购物车操作、订单提交等。 8. **微信小程序...
"实习记录小程序Ssm(源码SSM小程序Vue).zip"是一个基于Spring、SpringMVC和MyBatis(简称SSM)框架,前端使用Vue.js构建的实习记录管理小程序的源代码压缩包。该资源旨在为用户提供一个便捷的平台来记录和管理实习...
动态网站实训不仅涵盖了动态与静态网页的基本概念及其区别,还深入探讨了动态网页的技术实现,以及如何使用DWEB2.0模板快速搭建具有丰富功能的大型网站。通过这一实训,参与者不仅能掌握动态网站的基本原理,还能...
它使用虚拟DOM,实现高效更新,并提供了组件化开发模式,使得页面结构清晰,代码可维护性高。配合Element UI,一个基于Vue的UI组件库,系统拥有了统一的界面风格和丰富的交互效果,提升了用户体验。 在系统功能方面...
Vue.js是一个轻量级的前端MVVM框架,它以数据驱动和组件化的思想为核心,使得开发用户界面更加简单高效。Vue.js的特性包括虚拟DOM、指令系统、组件化、响应式数据绑定等,适合构建复杂的单页应用。在这个项目中,Vue...
其次,“Vue.js”是一个轻量级的前端MVVM框架,它以其易学易用、组件化开发、响应式数据绑定等特点,受到开发者喜爱。Vue.js在本系统中主要负责用户界面的渲染和交互,提供动态数据展示和用户友好的操作体验。 ...
1. 使用IDEA或Eclipse作为Java开发环境,Vue CLI用于前端项目初始化。 2. 利用Maven或Gradle进行项目管理和依赖管理。 3. 使用Git进行版本控制,确保团队协作的顺利进行。 4. 在Docker中部署测试环境,提高开发效率...
用户可以上传书籍,这需要文件上传的相关处理,如使用Commons MultipartFile组件。书籍信息的存储通常涉及数据库设计,包括书籍ID、书名、作者、简介等字段。此外,可能还需要实现书籍分类和搜索功能,这就需要对SQL...
8. **服务器端支持**:虽然前端使用Flex,但后台通常需要其他语言(如PHP、Java、Python等)配合,处理用户请求、验证数据、处理业务逻辑以及与数据库交互。 **相关知识点** 1. **ActionScript 3.0**:Flex的主要...
新闻管理系统是基于JSP(JavaServer Pages)技术的课程设计项目,主要目的是让学生掌握Web开发的基本技能,了解如何使用JSP来实现动态网页并处理服务器端的数据。在这个项目中,通常会涉及到以下几个核心知识点: 1...
首先,Spring框架作为整个项目的ioc(Inversion of Control,控制反转)和di(Dependency Injection,依赖注入)容器,负责管理各个组件的生命周期和对象间的依赖关系。SpringMVC则作为前端控制器,处理来自客户端的...
学习这个项目,开发者不仅可以掌握JSP、Servlet的基本语法和使用,还能了解到如何集成前端框架(如Bootstrap)以创建美观的UI,同时加深对数据库操作和Web应用开发流程的理解。通过实际操作,可以提高编程技能,提升...