Cannot read property 'defaultView' of undefined 报错解决

Posted luke-fan

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Cannot read property 'defaultView' of undefined 报错解决相关的知识,希望对你有一定的参考价值。

  当我们在一个事件方法中去使用$.ajax进行数据交互时

	$(‘.btn_box‘).click(function() {
		$.ajax({
			type: ‘post‘,
			url: ‘‘,
			dataType: ‘json‘,
			contentType: ‘application/json; charset=utf-8‘,
			async: false,
			success: function(res) {
				console.log($(this))
				
			}
		})
	})            

  

  此时在console 会报如标题一样的错误,

    1.因为 $ .ajax()中的$ (this)已经不是我之前所处理的了,在$ .ajax()中它指的是 ajax jQuery对象本身;


  解决办法:  

	$(‘.btn_box‘).click(function() {
		$.ajax({
                        context: this,
			type: ‘post‘,
			url: ‘‘,
			dataType: ‘json‘,
			contentType: ‘application/json; charset=utf-8‘,
			async: false,
			success: function(res) {
				console.log($(this))
				
			}
		})
	})      

  只需要在ajax中加一个 context:this  锁定当前元素即可  问题解决!!!

    

以上是关于Cannot read property 'defaultView' of undefined 报错解决的主要内容,如果未能解决你的问题,请参考以下文章

Uncaught TypeError: Cannot read property 'addEventListener'

Uncaught TypeError: Cannot read properties of undefined (reading 'getUserMedia')

axios报错: Cannot read property 'protocol' of undefined ....

解决报错Cannot read property 'forceUpdate' of undefined

VUE TypeError: Cannot read property 'validate' of undefined

Cannot read property 'map' of undefined