FormData()的兼容性,如何在IE8中使用,或者有没有其他替代方法,大神快来!!
FormData()的兼容性,如何在IE8中使用,或者有没有其他替代方法,大神快来!!
<form id="fileForm" class="form-horizontal" action="<c:url value='/excelimp/form.shtml'/>" enctype="multipart/form-data" method="post" role="form">
<div class="modal-dialog">
<div class="modal-content">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal" aria-hidden="true">×</button>
<h3 id="fileModalLabel">批量导入</h3>
</div>
<div class="modal-body">
<div class="control-group control_group_heigth margintop10" style="margin-left:0px;">
<label class="control-label span5 text-right">Excel文件:<i class="require_star">*</i></label>
<label ><input type="file" name="file" required="required" id="Excelfile"/></label>
</div>
</div>
<div class="modal-footer">
<div id="fileloadingtip" class="control-group" style="display:none;margin-right:90px;margin-bottom:0px;">
<img style="height: 20px;width:20px;" src="<c:url value='/img/common/loading.gif'/>">
<span style="font-size: 12px;">操作处理中,可能需要几分钟时间,请稍候。。。</span>
</div>
<button type="button" class="btn btn-primary" id="btn_imp" name="btn_imp">导入</button>
<button type="button" class="btn" data-dismiss="modal" name="btn_cancel">取消</button>
</div>
</div>
</div>
</form>
后面用了new FormData()来传给后台数据,结果在IE下出现FormData未定义的问题,请问有没有什么兼容的解决方法或者替代方法
$("#btn_imp").on('click', function(e) {
var formData = new FormData($( "#fileForm" )[0]);
$.ajax({
url: $( "#fileForm" ).attr('action'),
type: 'POST',
data: formData,
async: false,
cache: false,
contentType: false,
processData: false,
success: function (data) {
alert("导入成功");
},
error: function (data) {
$("#errorinfo").html(data.msg);
}
});
return false;
});
});
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(5)
已经找到解决办法了,用jquery.form插件中的ajaxSubmit可以支持文件的上传
用
jQuery.serialize()
序列化表单值。jquery.form 有时候用起来很尴尬
也就是说,formData可以兼容ie9及以上??
兄弟,你用jquery.form.js插件真的可以获取回调吗?我获取的回调值都不正确啊