Uncaught TypeError: Illegal invocation问题解决方法

今天使用ajax上传文件时,出现了错误。数据传输的方式是通过定义formData完成的,提交的文件对象也设置为dom对象,但是还是不能发送请求。F12看到后台报了个错误:Uncaught TypeError: Illegal invocation,百度了一下,找到了解决方法。

解决方法:在ajax请求的参数中添加如下两个参数:

$.ajax({

  ...,

  processData: false,

  contentType: false

  ...

});

processData

类型:Boolean

默认值: true。默认情况下,通过data选项传递进来的数据,如果是一个对象(技术上讲只要不是字符串),都会处理转化成一个查询字符串,以配合默认内容类型 "application/x-www-form-urlencoded"。如果要发送 DOM 树信息或其它不希望转换的信息,请设置为 false。

contentType

类型:String

默认值: "application/x-www-form-urlencoded"。发送信息至服务器时内容编码类型。

默认值适合大多数情况。如果你明确地传递了一个 content-type 给 $.ajax() 那么它必定会发送给服务器(即使没有数据要发送)。

原文地址:https://www.cnblogs.com/HIT-ryp/p/11566743.html

时间: 2024-11-06 10:03:36

Uncaught TypeError: Illegal invocation问题解决方法的相关文章

Ajax方式上传文件报错"Uncaught TypeError: Illegal invocation"

今天使用ajax上传文件时,出现了错误.数据传输的方式是通过定义formData完成的,提交的文件对象也设置为dom对象,但是还是不能发送请求.F12看到后台报了个错误:Uncaught TypeError: Illegal invocation,百度了一下,找到了解决方法. 解决方法:在ajax请求的参数中添加如下两个参数: $.ajax({ ..., processData: false, contentType: false, ... }); processData 类型:Boolean

Javascript报uncaught typeerror illegal invocation错误

今天在写js代码的时候遇到一个奇怪的错误,uncaught typeerror illegal invocation. 这个错误以前一直没遇到过,不知道是什么问题,于是我仔细看我的代码,才发现是因为自己粗心,在用ajax向后台传值的时候把一个对象当作参数传上去了,所以才会报这个错误...简直无语了,以后不能粗心大意啊..   这么低级的错误啊..在这里记录一下,以免下次再犯... 版权声明:本文为博主原创文章,未经博主允许不得转载.

JQuery报错"Uncaught TypeError: Illegal invocation"

Jquery实现Ajax异步提交时报错"Uncaught TypeError: Illegal invocation",如下图: 排查发现错误在于此: data:{"search_value":$('input[name=search_value]'),"order_source":buyerType,"order_status":orderType} $('input[name=search_value]') 是一个对象而不

jS Ajax 上传文件报错"Uncaught TypeError: Illegal invocation"

jS Ajax 上传文件报错"Uncaught TypeError: Illegal invocation" query-3.1.1.min.js:4 Uncaught TypeError: Illegal invocation 错误原因: jQuery Ajax 上传文件处理方式, 使用ajax向后台发送数据时其中的图片数据的参数类型为file,属于对象,而不是一个字符串值.导致错误的出现 var formData = new FormData(); formData.append(

ajax--表单带file数据提交报错Uncaught TypeError: Illegal invocation

只要设置 contentType: false, //不设置内容类型 processData: false, //不处理数据 1 $("#btn").on("click",function(e){ 2 e.preventDefault(); 3 // 得到提交的参数 4 var name = $("#name").val(); 5 var gender = $("input[type='radio']:checked").va

QQ互联redirect uri is illegal(100010)问题解决方法

Question:QQ互联登录出现redirect uri is illegal(100010) 是因为你站点使用了多个域名导致的,只有云平台相同的域名地址下可以正常使用,其他域名下使用QQ互联登录都会出现redirect uri is illegal(100010) 错误,那么如何来解决呢? 1.服务器时间快或慢或时区错误 可以通过后台工具云平台诊断查看服务器时间是否正常,同步服务器时间或修改服务器时间 2.云平台和QQ互联域名解析链接错误 可以通过后台工具云平台诊断如果有可诊断正常的IP,可

[Android]通过js方法回调部分native报错 Web Console: Uncaught TypeError: Object [object Object] has no method 'xxx'

在android4.2以前,注入步骤如下: webview.getSetting().setJavaScriptEnable(true); class JsObject { public String toString() { return "injectedObject"; } } webView.addJavascriptInterface(new JsObject(), "injectedObject"); Android4.2及以后,注入步骤如下: webv

js.live方法无效, 报错:uncaught TypeError: $(...).live is not a function

前段时间在网上COPY了一个js效果,需要引用jQuery 1.9.1.min.js,之前项目中引用的是jQuery 1.5.1.min.js 然后发现代码中一些动态生成的元素有用到 live的方法全部都失效,调试发现Js报错:uncaught TypeError: $(...).live is not a function 网上一查原来是 Query 1.9 比之前的版本做了很大的调整,很多函数都不被支持 live()方法已经失效,需要改成以下方式 $('#id').on("click&quo

Vue报错:Uncaught TypeError: Cannot assign to read only property 'exports' of object 的解决方法

问题是这样的:如下>> 解决办法: 1“:我的webpack 最高版本,造成 混用import和module.exports :所以降低webpack版本 安装指定版本:npm install [email protected] -g 例如:npm install [email protected] -g 删除 编译目录文件: 2重新生成 然后输入启动命令: 成功解决!效果: 方法二: 注释掉后一个 重新生成,启动项目 OK! Vue报错:Uncaught TypeError: Cannot