2010-04-06 36 views
20

Tôi muốn biết cách đếm số hàng cho jqGrid. Tôi đang sử dụng rowNum: -1 để nó hiển thị tất cả các hàng. Tôi đã thử sử dụng:Cách nhận số hàng cho jqGrid?

parseInt($("#grid").getGridParam("records"), 10) 

Nhưng nó luôn trả về 0.

Cảm ơn sự giúp đỡ.

Trả lời

34

Hãy thử:

$("#grid").getGridParam("reccount") 

từ jqGrid documentation:

reccount (nguyên):

tài sản chỉ đọc. Trả về số chính xác lượng hàng trong lưới


Cũng lưu ý rằng, như Mike nhận xét, bạn cần phải sử dụng phương pháp getGridParam với các tùy chọn records để lấy một số của tất cả các hàng nếu bạn đang sử dụng pagination .

+1

Lưu ý rằng nếu bạn đã bật phân trang trong jqGrid, chức năng này sẽ chỉ trả về số hàng được hiển thị * trên trang này *. Để có được số lượng hàng đầy đủ, hãy sử dụng hàm 'getGridParam', được hiển thị trong một trong các câu trả lời khác. –

+1

@MikeGledhill - Cảm ơn, tôi đã cập nhật câu trả lời này để bao gồm 'bản ghi' vì không có câu trả lời nào khác giải thích tại sao lại hoạt động. Lưu ý rằng op không sử dụng phân trang, nhưng rất nhiều người đọc điều này có thể là ... –

2

Tôi đã cố gắng truy cập và tôi nhận được 0 nhưng những điều sau đây đã hiệu quả đối với tôi.

<div>Total subscriber count: <div id="count" style="display: inline;"></div></div> 

<br /> 

<div> 
    <table id="grid"></table> 
</div> 

<script type="text/javascript"> 

    $(document).ready(function() { 
     $("#grid").jqGrid({ 
      //Other stuff removed for brevity 
      gridComplete: function() { 
       $('#count').html($('#grid').getGridParam('records')); 
      } 
     }); 
    }); 

</script> 
1

Đây có thể là quá mức cần thiết và không biết nếu có một cách tốt hơn, nhưng công trình này cho tôi:

$("#grid").getRowData().length 
13
jQuery("#grid").jqGrid('getGridParam', 'records'); 
0
<a href="javascript:void(0)" id="g9" onclick="alert(jQuery('#list').jqGrid('getGridParam','records'));">Get number of records in Grid</a> 
0

tôi nhận được các dữ liệu lưới để mảng và sau đó sử dụng hàm chiều dài mảng để lấy độ dài mảng. Nó bằng với số lượng bản ghi trong jqgrid.

//get the grid data to array  
var rows = $('#jqxgrid').jqxGrid('getrows'); 
// get the length of the array on array.length using javascript funcation 
alert('' + rows.length); 
Các vấn đề liên quan