ajax上传文件,(IE浏览器new FormData的兼容问题)

问题记录:2018-07-30

ajax方法上传文件时用到 new FormData()方法来传递数据,但在IE8浏览器下提示错误。改用ajaxSubmit方式进行提交,引用到jquery.form.js插件

<%-- 原方法 

var formData = new FormData($("#uploadForm")[0]);
$.ajax({ url: "<%=mainWeb%>/goods/count/importExcel.do",
data: formData,
cache: false,
async: true,
type: "post",

..........

--%>

 

<%-- ajaxSubmit --%>

表单:

<form id="uploadForm" action="" method="post" enctype="multipart/form-data" style="text-align:left;" target="uploadScanFileIfrm">
<input type="file" name="uploadFile" id="uploadFile" style="height: 27px; width: 98%;" />
</form>

按钮:

<button id="btn_upload" οnclick="javascript:doUploadFile()">开始导入</button>

js(引用jquery.form.js插件):

function doUploadFile(){
$("#uploadForm").ajaxSubmit({
type: 'post',
url: "<%=mainWeb%>/goods/count/importExcel.do",
success: function (response) {
var message = JSON.parse(response);
if(message.result){
alert("导入成功");
parent.doQuery();
}else{
layer.alert(message.msg);
}
},
error: function (response) {
var message = JSON.parse(response);
alert("导入失败:"+message.msg);
}
});

}

IE下ajax返回出现下载提示,在spring-mvc配置文件中添加

<bean id="mappingJacksonHttpMessageConverter"

class="org.springframework.http.converter.json.MappingJacksonHttpMessageConverter">

<property name="supportedMediaTypes">

<list>

<value>text/html;charset=UTF-8</value>

</list>

</property>

</bean>

转载于:https://www.cnblogs.com/xxww/p/9390476.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值