반응형
backbone.js - 이벤트, 클릭한 내용 확인
backbone.js view 클래스 중 하나에서 다음과 같은 것이 있습니다.
...
events: {
'click ul#perpage span' : 'perpage'
},
perpage: function() {
// Access the text of the span that was clicked here
// Something like: alert($(element).text())
},
...
내 페이지 당 마크업은 다음과 같은 것을 가질 수 있기 때문입니다.
<ul id="perpage">
<li><span>5</span></li>
<li><span>10</span></li>
</ul>
그렇다면 사건의 원인이 된 요소에 대한 정보를 정확히 어떻게 찾을 수 있을까요?아니면 이 경우에, 그것이 클릭되었습니까?
일반적으로 이벤트 바인딩에서는$(this)
하지만 백본 뷰가 설정되어 있다고 확신합니다.this
항상 보기를 참조하므로 다음을 수행하십시오.
perpage: function(ev) {
alert($(ev.target).text());
}
정말 늦은 편집: 아마도 사용하고 싶을 것입니다.$(ev.currentTarget)
아래 Pawlik의 답변에 대한 토론을 참조하십시오.
ev.target
오해를 불러일으킬 수 있습니다. 사용해야 합니다.ev.currentTarget
http://www.quirksmode.org/js/events_order.html 에 설명된 바와 같이
원하는 속성을 얻을 수 있습니다.ev
로 작동하는.this
:
perpage: function(ev) {
console.log($(ev.target).attr('name'));
}
언급URL : https://stackoverflow.com/questions/5680807/backbone-js-events-knowing-what-was-clicked
반응형
'programing' 카테고리의 다른 글
스프링 @트라이 캐치 블록 사용 시 트랜잭션 주석 (0) | 2023.08.16 |
---|---|
2011년에도 여전히 js를 저하시킬 필요가 있습니까? (0) | 2023.08.16 |
C# LINQ에 해당하는 Javascript 선택 (0) | 2023.08.16 |
Rails 3 AJAX 원격 폼 콜백 (0) | 2023.08.16 |
Git는 파일 해시를 어떻게 계산합니까? (0) | 2023.08.16 |