2013-10-31 30 views
9

tôi muốn truy cập dữ liệu lưới như sauLàm thế nào để có được dữ liệu cho tất cả các hàng trong jqGrid với pagination

var namePresent; 
    var datafromgrid = $('#MyGrid').jqGrid('getRowData'); 
    for (var i = 0; i < rowCount; i++) { 
     var name = datafromgrid[i].Name; 
     var firstname = name.split(/ +/); 
     if (firstname[0].toLowerCase() == Name.toLowerCase()) { 
      namePresent = 1; 
     } 
    } 

Bây giờ giả sử khi lưới của tôi được nạp với 5 hồ sơ sau đó mã này ném lỗi trên dòng var name = griddata[i].Name; kể từ lưới nó không thể đọc griddata [5]. Vui lòng cho tôi biết cách đọc toàn bộ dữ liệu lưới ngay cả khi không hiển thị trên màn hình nhưng được tải thành công?

Trả lời

24

bạn có thể thử sử dụng:

var allRowsInGrid = $('#list4').jqGrid('getGridParam','data'); 
+1

WOW !!! Bạn là người hùng của tôi!!! Cảm ơn nhiều!!! Tôi có lưới rất tùy chỉnh, nơi một ô có thể có nhiều đầu vào và mã của bạn cho phép tôi thao tác dữ liệu cục bộ và sau đó gửi chúng đến máy chủ. –

+0

cũng làm việc cho tôi! –

5

Bằng cách này là nhiều hơn "khá":

var allRowsInGrid = $('#list4').getGridParam('data'); 
-1

Sau khi đào sâu vào các tài liệu, tìm thấy con đường phía trước thẳng này.

var allRowsInGrid = $('#list4').jqGrid('data'); 

Điều này trả về cho bạn đối tượng mảng JavaScript. Để kiểm tra các giá trị trong JS Object, bạn có thể đơn giản sử dụng cách sau.

var stringVersion = JSON.stringify(allRowsInGrid); 

alert (stringVersion); 
Các vấn đề liên quan