Xuất dữ liệu Excel tùy chỉnh
Điều này giả định sự quen thuộc cơ bản với DataTables, phần mở rộng nút của nó và khả năng liên quan để xuất dữ liệu bảng sang các định dạng tệp khác nhau, bao gồm cả Excel Show Tôi đã viết một số ghi chú tổng quan, nhưng đây là một chủ đề lớn và cần thêm một chút không gian Ở đây, tôi sẽ tập trung vào tài liệu tham khảo hữu ích khi bạn muốn tùy chỉnh xuất Excel Cụ thể hơn, tôi sẽ chỉ xem xét các tệp Office Open XML ( 1). Các tệp 2 cũ hơn (tối đa Excel 2003) sử dụng định dạng khác và không được xem xét ở đâyCấu trúc tệp ExcelTài liệu tham khảo chính thức của Microsoft về cấu trúc tệp Excel có tại đây Excel (. xlsx) Phần mở rộng cho Định dạng tệp ML Bảng tính XML mở của Office Có thể tìm thấy các tiêu chuẩn cơ bản mà các tiện ích mở rộng trên dựa vào tại đây ECMA-376 - Định dạng tệp Office Open XML Tóm lại, tệp Excel là tệp zip chứa một loạt thư mục con và tài liệu XML Sử dụng danh pháp Open Office, tệp zip là một “gói” chứa “các phần” (tệp XML) và các tệp tùy chọn khác, chẳng hạn như tệp đồ họa Chúng ta sẽ xem xét một phiên bản rất đơn giản của cấu trúc đó, như được sử dụng bởi DataTables
DataTables xây dựng một tệp Excel mặc định từ một loạt các chuỗi XML được mã hóa cứng thành tài nguyên JavaScript sau https. //cdn. bảng dữ liệu. lưới/nút/1. 6. 5/js/nút. html5. js Tìm kiếm 3 để tự mình xem những thứ này. Ví dụ, ở đây bạn sẽ thấy 68 kiểu ô dựng sẵn được xác định trước mà bạn có thể tham khảo khi xuất dữ liệu DataTablesLoại nội dungTệp 4 chứa danh sách các bộ phận khác nhau trong gói, cùng với loại của từng bộ phận - ví dụ
Các mối quan hệTệp 5 chứa một bộ ID mối quan hệ. Sau đó, chúng được sử dụng để xác định mối quan hệ giữa các phần khác nhau trong góiCũng như tệp 6 cấp cao nhất, có thể có các tệp khác - chẳng hạn như tệp 7 được hiển thị ở trên, tệp này có thể chứa các mối quan hệ với các phần khác của nội dung tổng thể, chẳng hạn như 8, 9, 40, v.v.Một ví dụ là
4Sách bài tậpTệp 41 chứa danh sách các trang tính 8 9Ở đây chúng ta có thể thấy ID mối quan hệ 42 đang được sử dụngphong cáchTệp 40 chứa thông tin liên quan đến phông chữ, đường viền, tô màu, căn chỉnh, v.v. Những thứ này sau đó có thể được sử dụng lại ở các địa điểm khác nhauMột ví dụ 2____23bảng tínhTệp 8 chứa dữ liệu trang tính 0 1Hàng và ÔTrong một hàng chẳng hạn như sau 2 3Ý nghĩa của từng phần như sau MụcMô tả 45a hàng 46hàng 13 47thẻ ô 48tham chiếu ô A13 49định dạng của ô nằm ở chỉ mục 80 12 trong danh sách định dạng 81 82thuộc tính loại 83 cho ô, trong đó 84 có nghĩa là "chuỗi chia sẻ", nơi lưu trữ văn bản. 85chỉ số của chuỗi là 86 - đó là chuỗi thứ 26 trong danh sách chuỗi được chia sẻDanh sách các loại 83TypeDescription 88boolean 89date 90error 91an inline string (i. e. , không được lưu trữ trong phần chuỗi chia sẻ, nhưng trực tiếp trong ô) 92số, được lưu trữ trực tiếp trong ô 84chuỗi chia sẻ (vì vậy được lưu trữ trong phần chuỗi chia sẻ chứ không phải trong ô) 94a công thức (một chuỗi đại diện cho công thức)Ví dụ sau đây cho thấy một ô (B2) chứa số 400, được lưu trữ trong chính ô đó 4 5Trên đây chỉ là một ví dụ nhỏ về các tùy chọn cấu hình có thể được Excel hỗ trợ Tài liệuTùy chọn ExcelTrang sau liệt kê các tùy chọn chính có thể được đính kèm với nút xuất Excel https. //dữ liệu. mạng/tham chiếu/nút/excel Các mục lưu ý là
Ví dụ 6 7Ở đây, các tùy chọn như 98 cũng có thể là các hàm 4 9Dữ liệu đã xuấtTrang sau đây bao gồm nhiều cách khác nhau để kiểm soát dữ liệu cụ thể nào được xuất từ DataTable sang Excel https. //dữ liệu. mạng/tham chiếu/api/nút. xuất dữ liệu() Nếu các tùy chọn xuất được cung cấp như một phần của cấu hình nút DataTable, thì bạn sử dụng tùy chọn 28 được đề cập trong phần trướcNếu bạn dùng cái này như một bộ xử lý độc lập thì bạn dùng hàm 29 như sau 8 1Các mục lưu ý là
Đối với tùy chọn 35, bạn có thể cung cấp các chức năng khác nhau như sau 2____73Mục lưu ý
Xuất thông tinTrang sau bao gồm các tùy chọn có thể phổ biến đối với nhiều nút cho một bảng https. //dữ liệu. mạng/tham chiếu/api/nút. exportInfo() Như vậy, các tùy chọn có sẵn ở đây chồng chéo với một số tùy chọn được trình bày trong phần “Tùy chọn Excel” ở trên - ví dụ:
Điều này thường được sử dụng bên ngoài nút hoặc với nút tùy chỉnh Thay đổi cấp thấpXem xét tùy chọn nút sau 2 5Điều này truy cập dữ liệu XML cơ bản cho trang tính Excel. Sau đó, nó sử dụng jQuery để chọn nội dung văn bản của ô A1. Cuối cùng nó cập nhật nội dung đó Một số ví dụ khác Thay đổi định dạng của hàng 1 6 7GHI CHÚ. Kể từ jQuery 3. 4, lớp giả 11 không được dùng nữa. Xóa nó khỏi bộ chọn của bạn và lọc kết quả sau bằng cách sử dụng 12Thay đổi định dạng của hàng 3 6 9Thay đổi định dạng của cột B 6 1CẢNH BÁO - nếu bảng tính của bạn có đủ cột, bạn có thể thấy điều này cũng chọn cột BA, BB, v.v. Thay đổi bất kỳ hàng nào có số hàng chứa số 3 (3, 13, 23, 30, 31…) 6 3Lấy cột cuối cùng trong trang tính 6 5Đây là một ví dụ lưu giữ các số rất dài dưới dạng văn bản (chứ không phải, ví dụ, dưới dạng số trong ký hiệu khoa học) https. // stackoverflow. com/a/52047216/12567365 Đây là một ví dụ có thêm một bộ định dạng ô mới 6 7Ví dụ sau minh họa việc tạo thêm sheet trong file Excel được tạo từ Datatables https. //ý chính. github. com/northcoder-repo/05bde971c7879ea5ebc4907f323376fc Nút tùy chỉnhBạn có thể tạo các nút tùy chỉnh hoàn toàn https. //dữ liệu. net/tiện ích mở rộng/nút/tùy chỉnh https. //dữ liệu. mạng/tham chiếu/tùy chọn/nút. nút. hoạt động Xem xét điều này 8Nó sử dụng phương thức JavaScript 13 để gọi một hàmNhư được sử dụng ở đây, nó cho phép chúng tôi cung cấp chế độ bật lên "vui lòng đợi" tùy chỉnh ( 14 là SweetAlert2) |