2012-11-28 2 views
0

에 의해 렌더링 된 테이블을 정렬하지 않습니다 tablesorter에 점점 문제가 다음 코드로 제대로 작동하지 : 열tablesorter에가 난 Backbone.js

el = this.view.render().el; 
$("#players").html(el); 
$("#players-table").tablesorter({ 
    theme: 'blue' 
}); 

테이블 분류기 스타일 얻을 적용된 미세하지만 없음 정렬합니다.

그러나 제 3 행의 파이어 버그에서 중단 점을 설정하면 테이블 렌더링이 계속 진행될 때까지 기다려야 정상적으로 작동합니다.

jQuery의 .html() 설명서에 따르면 .html()은 동기 호출입니다. 중단 점 설정 및 "대기 중"이 효과가 없어야 함을 의미하지 않아야합니까? 제가 누락 된 것이 있습니까?

+0

최대한 빨리 시도해 보겠습니다. 네가 맞아, 너무 이상해 보인다. – mendicant

답변

0

더 이상 컨텍스트가 없으면이 문제를 해결할 때 내 게스트는 el 대신 jquery 요소 $el을 구체적으로 타겟팅하는 것이 좋습니다.

$("#players").html(this.view.render().el); 
this.view.$el.tablesorter({ 
    theme: 'blue' 
}); 
1

가져온 컬렉션이 비동기인지 잊어 버렸습니다. 따라서이 코드는 실제로 올바르지 만 콜렉션 (뷰로 전달됨)이 채워지기 전에 실행 중입니다.

그래서 중단 점이 작동하는 이유는 테이블을 통과하고 테이블을 가져 오기 전에 채우기 시간을 제공한다는 것입니다.