Tôi thấy rằng trong jqGrid plugin cho JQuery tôi có thể thêm hàng động, nhưng tôi có thể làm tương tự với các cột không? Nếu có một bảng đơn giản, tôi muốn làm điều này bằng tay, nhưng jqGrid lưu trữ thông tin bảng trong rất nhiều div.jqGrid thêm cột mới
Trả lời
Không thể thêm cột vào jqGrid động. Bạn phải tạo lại toàn bộ lưới với colModel
có thêm một cột nữa. Nếu bạn sử dụng riêng biệt colNames
, thì kích thước của mảng cũng phải được tăng lên. Bạn có thể sử dụng GridDestroy ví dụ để hủy lưới hiện có. Việc sử dụng jQuery.Remove
hoặc jQuery.Empty
thay thế cũng có thể.
CẬP NHẬT: Dường như với tôi rằng GridUnload là tốt hơn cho mục đích của bạn. Tôi đã tạo small demo minh họa cách người ta có thể tạo lại một mạng lưới. Để có thể sử dụng GridUnload hoặc GridDestroy bạn phải xác minh rằng bạn bao gồm grid.custom.js trong dự án của mình (nếu bạn sử dụng phiên bản dành cho nhà phát triển của jqGrid) hoặc bạn đã chọn "Tùy chỉnh" "Phương thức cộng" trên trang jqGrid download.
CẬP NHẬT 2: Người ta có thể sử dụng phương thức addColumn
có thể tải xuống từ here (xem jQuery.jqGrid.addColumn.js
). Phương pháp vẫn đang trong giai đoạn beta. Người ta có thể tìm thấy một số bản demo trong đó cho thấy làm thế nào để sử dụng phương pháp here (xem addColumnX.htm
ví dụ).
Cảm ơn, nhưng tôi không thể tìm cách sử dụng GridDestroy. Bạn có thể giúp tôi với một ví dụ nhỏ không? 'jQuery (" # list ") .jqGrid ('GridDestroy');' nói rằng hàm không xác định (GridDestroy) – Ockonal
@Ockonal: Tôi đã cập nhật câu trả lời của mình và bao gồm một bản trình diễn nhỏ. – Oleg
@Oleg, Cảm ơn bạn rất nhiều. Một lần nữa, bạn đã tiết kiệm thời gian của tôi trên jqgrid. +1. – vissu
chỉ cần sử dụng
$("#gridid").jqGrid('GridUnload');
nó sẽ dỡ bỏ lưới hoàn toàn và sẽ sẵn sàng để tải lại với các cột và dữ liệu mới.
Trong phiên bản mới hơn, tính năng này không hoạt động nữa. Sử dụng điều này để dỡ bỏ jqGrid: $ .jgrid.gridUnload ('# list'); – tudor
Bạn có thể dễ dàng thiết lập các mô hình cột mới và tải lại lưới:
var newColModel = $("#myGrid").jqGrid("getGridParam", "colModel").concat({ /* new column attributes */ });
$("#myGrid").jqGrid("setGridParam", {colModel: newColModel}).trigger("reloadGrid");
rownumbers: đúng, và rownumWidth: 25 (mặc định)
- 1. Thêm hình ảnh vào cột jqgrid
- 2. jQGrid cột chọn cột ẩn
- 3. jqGrid làm nổi bật hàng mới được thêm
- 4. Cột ẩn trong jqGrid
- 5. Cột Wordwrap trong JQGrid
- 6. jQGrid Cột Chooser Modal Overlay
- 7. cột hình ảnh trong jqGrid?
- 8. Cách Ẩn Cột trong jQgrid nhưng hiển thị Cột này trong bảng Thêm/Chỉnh sửa
- 9. Cách thêm cột mới vào tệp CSV?
- 10. Cách thêm cột mới vào bảng MYSQL
- 11. Thêm cột mới vào bảng mysql lớn
- 12. Thêm cột mới vào thẻ actions_as_taggable_on
- 13. Thêm một cột mới giữa cột dataframe khác
- 14. jqGrid reloadGrid và làm mới colModel mới và colNames
- 15. JQGRID bật/tắt cột sắp xếp
- 16. sqlite: cách điền cột mới với các giá trị khi cột mới đã được thêm?
- 17. jqGrid cột không được căn chỉnh với tiêu đề cột
- 18. Chiều rộng cố định của cột jqgrid?
- 19. JQGrid Cột chiều rộng tự động
- 20. JQGrid đặt chú thích và tên cột
- 21. Cách thực hiện hành động trong jqGrid sau khi thêm hàng mới
- 22. cách thêm cột mới vào khóa chính composite hiện có
- 23. Thêm cột mới vào một Winforms DataGridView qua mã
- 24. Thêm cột mới có dữ liệu từ một tham gia
- 25. Rắc rối cập nhật cột mới sau khi thêm nó
- 26. Thêm chức năng vào jqGrid jQuery plugin
- 27. jqGrid & MVC3 - Thêm xác thực mẫu
- 28. jqGrid - Thứ tự sắp xếp mặc định theo cột
- 29. Thêm hơn hai phần đầu nhóm columng trong jqGrid
- 30. Thêm lớp CSS vào cột
Và nơi lưới của bạn sẽ mất dữ liệu cho mới này cột? – griZZZly8
@ grizzzly8 nó phải trống (các trường dữ liệu có thể chỉnh sửa). – Ockonal