2013-08-14 2 views
0

다음 코드가 있습니다.부모 클래스의 클래스를 제공하지 않습니다.

<div data-bind="click: callMe2" class="parent"> 
    <a href="javascript:void(0);" class="anchorrs">Test</a> 
</div> 

내가하려는 것은 테스트 링크를 클릭 할 때 div 요소의 클래스를 가져 오는 것입니다. 하지만 대신 데이터가 div 요소에 바인딩되어 있더라도 앵커 요소의 클래스를 가져오고 있습니다. 내가 놓친 게 있니? jquery에서 .parent()를 사용하여이를 달성 할 수는 있지만 접근 방법을 원하지 않습니다.

다음은 바이올린입니다. 이벤트 객체에서 http://jsfiddle.net/euw8z/3/

답변

4

이벤트를 트리거 한 원본 요소에 target 점 - 그런 다음 속성을 사용하여 핸들러가 결합되는 요소를 얻으려면,이 경우 a 요소를 currentTarget

var viewModel = { 
    callMe2: function(item,event){ 
     var $self = $(event.currentTarget).attr("class"); 
     //var $parent = $(event.target).parent().attr("class"); 
     alert($self); 
     //alert($parent); 
    } 
} 
ko.applyBindings(viewModel); 

데모 : Fiddle

+0

완벽합니다. 넌 최고야. 감사!! – shriek

관련 문제