2012-10-26 6 views
3

현재 데이터 테이블에서 행 수를 계산하려고합니다. 나는이 작업을 수행 할 경우특정 데이터 테이블의 행 수 가져 오기?

alert($('.tableViewer tbody tr').length) 

그것은 나에게주는 비 정확한 행 수 (나는 그것이 현재 페이지와 마지막 하나를 추가 생각?).

어쨌든, 나는 실제로 실제로있는 페이지에서 행 수를 얻으려고합니다. 누구든지이 작업을 수행하는 방법을 알고 있습니까?

function fnDelete(elem){ 
    if (selected.length>0) { 
     var c; 
     c = confirm('Are you sure you want to delete the selected ${displayTableName}?'); 
     if (c) { 
      // Create delete url from editor url... 
      var deleteURL = (urlstr.substring(0, urlstr.lastIndexOf('/') + 1)) + "delete.do"; 
      alert($('.tableViewer tbody tr').length) 
      deleteRecord(deleteURL,selected[0]); 

      alert($('.tableViewer tbody tr').length) 
      if ($('.tableViewer tbody tr').length === 1) { 
       setTimeout(function() { oTable.fnPageChange('last'); }, 100); 
      } 
     } 
    } 
} 
+1

숨겨진 행이있을 수 있습니까? '$ ('. tableViewer tbody tr : visible'). 길이는 – JoeFletch

+0

입니다. 실제로 올바른 방법을 사용하고 있습니다. 귀하의 DOM 요소를 검사 –

+0

@ JoeFletch - 그게 내가 찾고 있던 바로 그거야! 고마워요! 당신이 대답에 그것을 쓰는다면 나는 그것을 올바른 것으로 선택하고 당신을 또한 상향시킬 것입니다. 이것은 나를 미치게했다! – streetlight

답변

5

tr 요소 페이지에서 수 있지만 볼 수 없습니다 :

여기 내 삭제 버튼입니다. 이 시도!

$('.tableViewer tbody tr:visible').length 
+1

테이블에 표시 할 레코드가 없더라도 '일치하는 레코드가 없습니다.'라는 행이 표시 될 수 있습니다. 다음은 레코드가 없으면 false를 반환합니다. $ ('. tableViewer tbody tr : first td'). hasClass ('dataTables_empty') – Bjorn

관련 문제