2010-09-27 8 views
8

Nếu bạn có 17 bản ghi và hiển thị 15 tại một thời điểm thì khi bạn ở trang 2, bạn thấy các bản ghi 16-17 của 17 - có ý nghĩa.jqGrid câu hỏi phân trang

Bây giờ khi bạn đang ở trên trang thứ hai này và bạn nhấn nút tải lại trên nav (đặt datatype = 'json') khi lưới tải lại nav, cho thấy lưới đang hiển thị 16-30 của 17. Điều này có vẻ là một lỗi - có cách giải quyết nào không?

Lưới vẫn có 17 hàng - nhưng cố gắng hiển thị toàn bộ 15 hàng (hàng rowum) trên trang thứ hai khi nó chỉ hiển thị hai hàng (16-17). Và văn bản phân trang điều hướng không chính xác (tham chiếu đến 30 hàng khi chỉ có 17 hàng).

Trả lời

29

Bạn nói đúng. Đó là một vấn đề cũ. Tôi đã sử dụng luôn trước

$("#list").setGridParam({page:1}).trigger('reloadGrid'); 

nhưng có cách khác. Trình kích hoạt 'reloadGrid' hỗ trợ các tùy chọn bổ sung: 'current' và 'page'.

$("#list").trigger("reloadGrid", [{page:1}]); 

sẽ đặt lại page thành 1 trong một bước. Cách sử dụng trong biểu mẫu

$("#list").trigger("reloadGrid", [{current:true}]); 

cho phép quản lý lựa chọn hiện tại. Bạn có thể gây ra kết hợp cả hai lựa chọn.

+0

Có bất kỳ tùy chọn nào trong số các tùy chọn này là giải pháp cho lỗi không? Đó là trong ví dụ của tôi, tôi có thể tải lại lưới và ở trang 2 nơi lưới sẽ hiển thị chỉ các bản ghi 16-17 không? –

+0

Và có lỗi này đã được báo cáo? –

+0

@Marcus: Có trên cả hai câu hỏi của bạn. Bạn có thể trực tiếp bắt đầu với trang 2 nếu bạn đặt nó trong các tham số jqGrid. Bạn có thể tự mình báo cáo lỗi hoặc tôi có thể làm điều này. Hiện tại tôi muốn tạm dừng ngắn, nhưng vẫn còn quá lâu trên stackoverflow. Tôi phải tiếp tục công việc chính của mình ... :-). Bằng cách này hiện tại ** chỉ có hai tùy chọn **: 'page' và' current'. – Oleg