2014-12-31 2 views
0

이것은 매우 쉽지만 어떤 이유에서든 작동하지 않을 수 있습니다. 제대로 실행되는 $ .get 함수가 있습니다. 데이터/결과를 가장 가까운 div에로드하려고합니다. div를 구체적으로 식별하면 모든 것이 정상적으로 작동합니다.

$.get(lk, function(data) { 
     $("div.tcontainer").html(data); 
    }); 

그러나 가장 가까운 div를 찾으면 작동하지 않습니다. 나는 (동적) 페이지에 몇 div가 있고 그들은 내가 그와 같은 div에에 가장 가까운 사업부를 찾아 데이터를로드 할 필요가 있으므로 같은 속성이 있습니다

$.get(lk, function(data) { 
     $(this).closest("div.tcontainer").html(data); 
    }); 

을하지만이 작동하지 않습니다. 누군가 위의 코드를 사용하여 가장 가까운 div를 찾도록 도와 줄 수 있습니까? 고맙습니다.

+1

가장 가까운 DIV로 대체하십시오. ??? 당신이 단지'this' 레퍼런스로 사용할 수있을 것 같은데요. '$ .get()'성공 콜백 내의'this'는 jqXHR 객체를 참조합니다. 참고로, 당신은 대신'$ .ajax()'를 사용하고'context' 옵션'this'로 넘길 수 있습니다 : context : this,' –

+1

* what * to * *? – dfsq

+1

$ (this) 무엇입니까 ?? html 코드를 제공하십시오 –

답변

2

this 변수의 값은 해당 상황에서 DOM 개체가 아닙니다. 다른 클로저 변수를 설정 한 다음 콜백 내부에서 해당 클로저 변수에 액세스해야합니다. 원하는 클로저 값이 this 인 경우 var that = this;을 입력하고 $(this)$(that)

관련 문제