AJAX上传文件时illegal invocation错误的解决方法 转

转自:https://blog.csdn.net/qq_42181069/article/details/80333779

 因为传进来的参数被预先处理了,所以才出现了illegal invocation报错,只要将processData的值改为false就可以解决

因为JQ自动的帮我们设置了请求头,但是ajax2.0中不需要设置请求头,我们找到contentType,把它的值设为false就能够取消掉这个设置。

完整代码如下:

$(function(){
$('input').change(function(){
//使用JQ的ajax
//结合formData实现图片预览
var sendData=new FormData();
sendData.append('icon',this.files[0]);
$.ajax({
url:'backData.php',
data:sendData,
type:'post',
//ajax2.0可以不用设置请求头,但是jq帮我们自动设置了,这样的话需要我们自己取消掉
contentType:false,
//取消帮我们格式化数据,是什么就是什么
processData:false,
success:function(backData){
console.log(backData);
}
})
})
})
</script>

点赞

发表回复

电子邮件地址不会被公开。必填项已用 * 标注