首先需要注意分两种情况:
1: 小于等于ie8的情况:需要ajaxFileUpload.js,下载附件
if(navigator.userAgent.indexOf("MSIE 6.0")>0 || navigator.userAgent.indexOf("MSIE 7.0")>0 || navigator.userAgent.indexOf("MSIE 8.0")>0){
$.ajaxFileUpload({
url: "..url",
secureuri: false, // 一般设置为false
fileElementId: "upload_image_field", // 文件上传表单的id <input type="file" id="fileUpload" name="file" />
dataType: 'json', // 返回值类型 一般设置为json
success: function (data, status) {
var data = eval("(" + data + ")");
if(data.status == true){
...
}else{
.....
}
}
});
}
2:大于ie8的情况:
var fileObj = document.getElementById("upload_image_field").files[0]
if (typeof (fileObj) == "undefined" || fileObj.size <= 0) {
alert("请选择图片")
return
}
var formFile = new FormData();
formFile.append("action", "url...");
formFile.append("image", fileObj); //加入文件对象
var data = formFile;
$.ajax({
url: "url..",
data: data,
type: "Post",
dataType: "json",
cache: false,//上传文件无需缓存
processData: false,//用于对data参数进行序列化处理 这里必须false
contentType: false, //必须
success: function (data) {
var data = eval("(" + data + ")");
if(data.status == true){
...
}else{
...
}
}
})
注意: 如果不是直接点击文件框上传文件,例如点击图标来上传,要注意在ie8下直接trigger触发后,无法提交表单,可以把文件框设置为透明,然后覆盖图标。设置透明需要注意ie9以下不支持opacity,所以需要使用filter。filter:alpha(opacity=0);opacity: 0;,
input file 有的浏览器上on change只能执行一次,这样需要每执行完一次就替换掉该input文件框
$("#upload_image_field").replaceWith('<input type="file" name="image" id="upload_image_field" style="display: inline-block;width:30px;">')
分享到:
相关推荐
**Ajax异步上传图片技术详解** 在Web开发中,用户经常需要上传图片,早期的上传方式通常是表单提交,这会导致页面刷新,用户体验不佳。随着Ajax技术的发展,异步上传图片已经成为主流,它允许用户在不刷新页面的...
在现代Web应用中,异步数据传输已经成为一种标准实践,...以上就是Ajax异步上传图片的基本流程和关键知识点,实践中可能需要根据具体需求进行调整和优化。通过Ajax,我们可以构建出响应快速、用户体验优秀的Web应用。
这个"java做的ajax异步上传 图片或文件的demo"为我们提供了一个基于Java后端和Ajax前端技术的实现示例,用于演示如何在Eclipse集成开发环境中配置并运行一个这样的应用。下面,我们将深入探讨相关的知识点。 首先,...
`ajaxfileupload.js` 是一个基于jQuery的插件,专门用于处理文件的异步上传,特别是图片。它简化了文件上传的复杂性,提供了回调函数,可以处理上传过程中的各种状态,如开始、进度、成功和失败。 要使用 `...
在本文中,我们将深入探讨如何使用SpringMVC和Ajax实现异步上传图片并实时显示的功能。这个技术组合常用于Web应用开发中,提供流畅的用户体验,避免页面刷新带来的不便。 首先,SpringMVC是Spring框架的一部分,专...
综上所述,"Servlet图片批量上传ajax异步上传"是一个完整的Web应用开发场景,涵盖了从前端的无刷新用户体验,到后端的文件处理,再到数据的JSON交换。这个Demo的实现可以帮助开发者理解如何在实际项目中整合这些技术...
修复ajaxfileupload.js 不能携带参数问题,修复返回json格式报错问题。轻松搞定异步上传图片问题。
在IT行业中,Ajax异步上传是一种常见的网页交互技术,它允许用户在不刷新整个页面的情况下进行数据的上传,显著提升了用户体验。Ajax(Asynchronous JavaScript and XML)的核心是利用JavaScript实现局部刷新,结合...
下载JS插件jquery-1.4.2.min.js和 jquery.form.js,在html中引入这两个js文件,通过以上的方式,我们就可以通过页面无刷新,在Struts2中无需要进行页面跳转来进行文件上传!
本教程将探讨如何使用AJAX和PHP实现图片的异步上传,这样可以提高用户体验,因为用户无需刷新整个页面即可完成上传操作。 一、AJAX简介 AJAX(Asynchronous JavaScript and XML)是一种在不刷新整个网页的情况下,...
ajax图片上,图片异步上传,更多详情请看 图片上传插件,基于jquery的上传插件,ajax图片上传,再更新 http://blog.csdn.net/weizengxun/article/details/8197716
"Ajax异步图片上传和裁剪插件"正是为解决这一问题而设计的工具,它结合了Ajax技术进行无刷新上传和图片裁剪功能,为用户提供流畅、便捷的体验。 首先,我们来谈谈Ajax。全称Asynchronous JavaScript and XML(异步...
本篇文章将深入探讨AJAX异步文件上传以及如何使用Servlet进行处理。 ### 1. AJAX异步文件上传原理 在HTML5之前,由于浏览器安全限制,AJAX无法直接处理文件,但HTML5引入了`FormData`对象,使得AJAX能够处理文件...
Struts2、jQuery和Ajax是Web开发中的三个关键组件,它们共同构成了文件异步上传的基础框架。这个项目是在MyEclipse环境下实现的一个简单的文件上传功能,让我们深入了解一下这些技术及其在文件上传中的应用。 首先...
js ajax异步上传插件, 包括两个组件BUpload ( 基于HTML5, UI仿百度编辑器的图片上传, 支持图片上传,浏览图片,支持图片预览,有进度条);JUpload ( 基于iframe的异步上传。)
在本文中,我们将深入探讨如何使用Ajax技术进行图片的异步上传,并提供一个具体的实例来说明其实现过程。Ajax图片上传允许用户在不刷新整个页面的情况下上传图片,从而提高用户体验,尤其是在网页应用中处理多媒体...
在这个场景中,“Struts2+ajax+json异步上传图片回显”是指利用Struts2框架,通过Ajax技术实现图片的异步上传,并通过JSON进行数据交互,最终实现在页面上即时回显上传的图片。 首先,让我们理解每个组件的作用: ...
这是一个图片上传的demo,开发环境为vs2010 mvc3.0 开发语言C#。具体题介绍及使用请看 http://blog.csdn.net/weizengxun/article/details/6843408