2016-10-01 7 views
0

'백본에서'el '이 아래의'sample div '인 뷰가 있습니다. 그리고이 뷰의 렌더링 기능에서 동적 인 <li> 요소를 만들고이를 ul 요소에 추가합니다.백본보기의 onClick 이벤트가 현재보기/모델을 반환하지 않음

var tabView = Backbone.View.extend({ 
     el : '#sample', 
     $ul : $("#sample").find("ul"), 
...(Other code) 
render: function() { 
    var htmContent = this.template(this.model.attributes); 
    this.$ul.append(htmContent); 
    return this.$el; 
} 
<div id="sample> 
<ul class="list"> 
<!-- <li class="series"> elements will be appended here'--> 
</ul> 
</div> 

지금 무엇 내가 할 필요가 <li> 요소의 클릭으로, 나는 모델과 호출 방법을 얻기 위해 해당 요소의 해당보기를 얻을 필요가있다. 따라서이 tabView에 해시 이벤트를 등록하고 <li>을 클릭 할 때 메소드를 호출했습니다. 그러나 '아래'는 항상 마지막으로 생성 된 <li> 요소보기/모델 만 반환합니다.

events:{ 
     'click .series':'clickOnContent' 
     } 

clickOnContent: function(e){ 
     e.preventDefault(); 
    var val = this.model.attributes; 
} 
현재 <li> 요소 대신/모델을 보려면 클릭 한

은 어떻게받을 수 있나요?

답변

1

모델과 그 속성을 사용하여 목록 항목 세트를 보유하려고 시도하는 것 같습니다. 이것은 잘못된 접근법입니다. 대신 "모음"에 의해 지원되는 목록의 하위보기를 만들어야하고 각 li 요소를 목록 컬렉션에 추가해야합니다. 백본 컬렉션에 대한 풍부한 자습서 중 하나를 읽으십시오.

+0

감사합니다. 목록 항목에 대한 하위보기 추가. – user2894296