IE10以下不兼容FormData导致表单无法提交。换成ajaxSubmit之后,在IE浏览器中出现保存文件提示(解决)

博客指出初始代码在Firefox和chrome可正常运行,但在IE8或IE9中出现FormData未定义问题,解决办法是改用form.ajaxSubmit(option)提交数据。此外,当后台返回JSON数据类型时,IE浏览器会出现保存文件提示,修改controller的produces让后台返回字符串类型可解决该问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

我的初始代码
前台

 var formData = new FormData();
 formData.append('name','value');
 $.ajax({
		 url: getContextPath()+"/upload",
                    type: 'POST',
                    cache: false,
                    data: formData,
                    processData: false,
                    contentType: false,
                    success:
                    error:
});

后台

@RequestParam(value="value",required=false)MultipartFile multipartFile

使用Firefox和chrome都是可以正常运行的。
使用IE8或者IE9时,出现FormData未定义。
解决方法:不适用FormData进行数据提交,改为form.ajaxSubmit(option)即可进行提交。(ajaxSubmit需要导入jquery-form.js才能使用)
但是后台返回JSON数据类型时,IE浏览器出现保存文件提示。页面无法进行下去。
解决方法: @RequestMapping(value = “/add”,method = RequestMethod.POST, produces = “text/htm;charset=UTF-8”)修改后太controller的producess如上。让后台返回字符串类型。即可解决这一问题。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值