2014-02-14 4 views
1

을 사용하여 차트를 플롯하고 데이터 테이블을 표시합니다.테이블 행을 숨기는 데 필요한 도움말 - dc.js

모든 것이 잘 실행됩니다. 그리고 테이블에 대해서는 dimensiongroup을 만들었습니다. dynatable 레코드에 그룹 변수 전달.

문제는 차트에서 일부 선택을하는 경우입니다. 데이터 테이블 값은 물론 변경됩니다. 그러나 숨겨져있는 레코드가 거의없고 0 값이 있습니다.

나는 그 행을 숨기고 싶었습니다.

다음은 내가 사용하고있는 기능입니다.

표 차원 : var tableDim = ndx.dimension(function(d) { return d.label; })

표 그룹 :var tableGroup = tableDim.group().reduceSum(function(d) { return d.count; })

다이나 테이블 :

var dynatable = $('.data-table').dynatable({ 
     features: { 
      pushState: false 
     }, 
     dataset: { 
      records: tableGroup.top(Infinity), 
      perPageDefault: 10, 
      perPageOptions: [10, 20, 100, 500, 1000] 
     } 
    }).data('dynatable'); 

차트 선택에 테이블을 새로 고침 :

function RefreshTable() { 
     dc.events.trigger(function() { 
      dynatable.settings.dataset.originalRecords = tableGroup.top(Infinity); 
      dynatable.process(); 
     }); 

     $('.data-table tr').each(function() { 
      if ($(this).find('td:nth-child(2)').text() < 1) { 
       $(this).addClass('zero-value'); 
      } 
     }) 
    }; 

난 값이 0 인 행에 대해 클래스를 할당하려면 코드 jquery을 작성했습니다. 그리고 내가 perPageDefault: 10을 주었을 때 처음 10 개의 레코드에만 할당됩니다. 하지만 전체 테이블 레코드에 대해 실행하고 싶습니다.

어떤 일이 dynaTable 초기화 및 RefreshTable의 레코드를 값으로 해당 행을 숨기고 0

답변

0

전에 할당에서 저를 도와주세요, 당신은 데이터를 복사하고 값 0

Dynatable이 기록을 제거 할 수 있습니다 전달하는 레코드에서 작동하므로 적합하다고 생각되는 방식으로 데이터를 변경할 수 있습니다.

+0

알 수 있습니다. 대단히 감사합니다 !! – user3206082

+0

생성 된'group'의 각 행을 어떻게 목표로 할 수 있습니까? 나는 forEach 함수를 사용할 수 없다. 오류 'Uncaught TypeError : Object # 에'forEach '메소드가 없습니다. – user3206082

+0

var 레코드 = tableGroup.top (무한대); 모든 그룹 데이터를 포함하는 배열을 검색합니다. –

관련 문제