[JQUERY] 작동하지 않는 AJAX 성공의 $ (이) 내부
JQUERY작동하지 않는 AJAX 성공의 $ (이) 내부
해결법
-
1.콜백 내에서 this는 Ajax 호출이 아닌 이벤트 핸들러가 결합 된 요소의 jqXHR 객체를 참조. 더이 자바 스크립트에서 어떻게 작동하는지에 대해 알아보세요.
콜백 내에서 this는 Ajax 호출이 아닌 이벤트 핸들러가 결합 된 요소의 jqXHR 객체를 참조. 더이 자바 스크립트에서 어떻게 작동하는지에 대해 알아보세요.
ES2015 +가 사용 가능한 경우, 화살표 기능을 사용하는 것이 아마도 가장 간단한 옵션이 될 것입니다 :
$.ajax({ //... success: (json) => { // `this` refers to whatever `this` refers to outside the function } });
당신은 상황에 맞는 옵션을 설정할 수 있습니다 :
$.ajax({ //... context: this, success: function(json) { // `this` refers to the value of `context` } });
또는 $ .proxy을 사용합니다 :
$.ajax({ //... success: $.proxy(function(json) { // `this` refers to the second argument of `$.proxy` }, this) });
또는이 외부 콜백의 값에 대한 참조를 유지 :
var element = this; $.ajax({ //... success: function(json) { // `this` refers to the jQXHR object // use `element` to refer to the DOM element // or `$(element)` to refer to the jQuery object } });
-
2.
jQuery(".custom-filter-options .sbHolder ul li a").each(function () { var myStr = jQuery(this).text(); var myArr = myStr.split(" ("); url = 'your url'; // New Code data = myArr[0]; try { jQuery.ajax({ url : url, context: this, type : 'post', data : data, success : function(data) { if(data){ jQuery(this).html(data); }else{ jQuery(this).html(myArr[0]); } } }); } catch (e) { } });
from https://stackoverflow.com/questions/6394812/this-inside-of-ajax-success-not-working by cc-by-sa and MIT license
'JQUERY' 카테고리의 다른 글
[JQUERY] 정규 표현식은 비 ASCII 문자와 일치 하는가? (0) | 2020.09.24 |
---|---|
[JQUERY] 어떻게 각도와 jQuery를 사용 하는가? (0) | 2020.09.24 |
[JQUERY] 비활성화 된 입력의 이벤트 (0) | 2020.09.24 |
[JQUERY] 채우기 고정 된 크기의 컨테이너에 크기 자동 동적 텍스트 (0) | 2020.09.24 |
[JQUERY] 어떻게 주어진 요소에 클래스를 추가하는 방법은 무엇입니까? (0) | 2020.09.23 |