Xuất jquery sang excel với định dạng

Mẫu này cho biết cách tạo trang tính Excel với định dạng tùy chỉnh bằng giao diện người dùng Infragistics Ignite cho thư viện jQuery JavaScript Excel

Mẫu này sử dụng các tính năng CTP (Xem trước kỹ thuật cộng đồng). API và hành vi có thể thay đổi khi các tính năng này được phát hành với sự hỗ trợ đầy đủ

Tạo tệp

Xuất jquery sang excel với định dạng

Mẫu này được thiết kế cho kích thước màn hình lớn hơn

Trên thiết bị di động, hãy thử xoay màn hình của bạn, xem kích thước đầy đủ hoặc gửi email đến một thiết bị khác

Mẫu này hiển thị tiêu đề tùy chỉnh cho bảng Excel. Bạn có thể sử dụng thư viện Excel trong trình duyệt và trong thời gian chạy JavaScript khác, chẳng hạn như Node. js

Đặt định dạng ô ngày trong khi xuất Excel trong lưới có thể sắp xếp lại

ProductProgress Kendo UI GridProgress Phiên bản giao diện người dùng KendoĐược tạo vào năm 2017. 3. phiên bản 913

Làm cách nào tôi có thể thay đổi định dạng của cột ngày trong khi xuất Excel trong Lưới giao diện người dùng Kendo?

  1. Đăng ký sự kiện excelExport của Grid
  2. Trong trình xử lý sự kiện excelExport, nhận tất cả các fieldsmodels của chúng
  3. Dựa trên loại model, hãy đẩy chỉ mục của cột trong một mảng
  4. Lặp qua các hàng và thay đổi giá trị cũng như định dạng của các cột mong muốn
<div id="grid"></div>
<script>
    $("#grid").kendoGrid({
        toolbar: ["excel"],
        excelExport: function(e) {
            var sheet = e.workbook.sheets[0];
            var grid = e.sender;
            var fields = grid.dataSource.options.fields;
            var fieldsModels = grid.dataSource.options.schema.model.fields;
            var columns = grid.columns;
            var dateCells = [];

            for (var i = 0; i < fields.length; i++) {
                var currentField = fields[i].field;
                var currentModel = fieldsModels[currentField];

                if (currentModel.type === "date") {
                    for (var j = 0; j < columns.length; j++) {
                        if (currentField === columns[j].field) {
                            dateCells.push(j);
                            break;
                        };
                    };
                };
            };
            for (var rowIndex = 1; rowIndex < sheet.rows.length; rowIndex++) {
                var row = sheet.rows[rowIndex];

                for (var q = 0; q < dateCells.length; q++) {
                    var cellIndex = dateCells[q];
                    var value = row.cells[cellIndex].value;
                    var newValue = new Date(value.getFullYear(), value.getMonth(), value.getDate());

                    row.cells[cellIndex].value = newValue;
                    row.cells[cellIndex].format = "yyyy-MM-dd";
                };
            };
        },
        columns: [{
                field: "name"
            },
            {
                field: "date2",
                width: 80,
                format: "{0: dd-MM-yy}"
            },
            {
                field: "age"
            },
            {
                field: "date1",
                width: 80,
                format: "{0: yy-MM-dd}"
            }
        ],
        reorderable: true,
        dataSource: {
            data: [{
                    name: "Jane Doe",
                    date2: new Date(),
                    age: 30,
                    date1: new Date()
                },
                {
                    name: "John Doe",
                    date2: new Date(),
                    age: 33,
                    date1: new Date()
                }
            ],
            schema: {
                model: {
                    fields: {
                        date1: {
                            type: "date"
                        },
                        name: {
                            type: "string"
                        },
                        date2: {
                            type: "date"
                        },
                        age: {
                            type: "number"
                        }
                    }
                }
            }
        }
    });
</script>

  • Đặt định dạng ô của lưới trong khi xuất Excel

Kể từ Kendo UI Q3 2014 (2014. 3. 1119), tiện ích Lưới cung cấp chức năng xuất Excel tích hợp

Đối với các ví dụ có thể chạy được, hãy tham khảo

  • Demo xuất Grid sang Excel
  • Demo copy dữ liệu sang excel

Để bật tùy chọn xuất Excel của Grid

  1. Bao gồm lệnh thanh công cụ tương ứng và đặt cài đặt xuất
    • cấu hình thanh công cụ
    • Cấu hình xuất Excel
  2. Bao gồm tập lệnh JSZip trên trang. Để biết thêm thông tin, hãy tham khảo bài viết với

Để bắt đầu xuất Excel thông qua mã, hãy gọi phương thức saveAsExcel

  • Theo mặc định, Lưới xuất trang dữ liệu hiện tại có áp dụng sắp xếp, lọc, nhóm và tổng hợp
  • Lưới sử dụng thứ tự, khả năng hiển thị và kích thước cột hiện tại để tạo tệp Excel
  • Lưới không xuất chủ đề CSS hiện tại trong tệp Excel. Để biết thêm thông tin về cách thay đổi giao diện trực quan của tài liệu Excel, hãy tham khảo phần bên dưới về
  • Lưới chỉ xuất các cột có giới hạn dữ liệu. Tất cả các cột không có bộ tùy chọn trường sẽ bị bỏ qua
  • Tùy chọn format không được sử dụng trong quá trình xuất. Để biết thêm thông tin, tham khảo phần trên
  • Tùy chọn template không được sử dụng trong quá trình xuất. Để biết thêm thông tin, tham khảo phần trên
  • Tùy chọn detailTemplate không được sử dụng trong quá trình xuất. Để biết thêm thông tin, tham khảo phần trên

Để biết thêm thông tin, hãy tham khảo bản trình diễn trực tuyến về xuất Excel

Ví dụ sau minh họa cách bật chức năng xuất Excel của Grid

    <script src="https://cdnjs.cloudflare.com/ajax/libs/jszip/2.4.0/jszip.min.js"></script>

    <div id="grid"></div>
    <script>
        $("#grid").kendoGrid({
            toolbar: ["excel"],
            excel: {
                fileName: "Kendo UI Grid Export.xlsx"
            },
            dataSource: {
                type: "odata",
                transport: {
                    read: "https://demos.telerik.com/kendo-ui/service/Northwind.svc/Products"
                },
                pageSize: 7
            },
            sortable: true,
            pageable: true,
            columns: [
                { width: 300, field: "ProductName", title: "Product Name" },
                { field: "UnitsOnOrder", title: "Units On Order" },
                { field: "UnitsInStock", title: "Units In Stock" }
            ]
        });
    </script>

Đối với việc xuất Excel của nó, Lưới cho phép bạn

Theo mặc định, Lưới chỉ xuất trang dữ liệu hiện tại. Để xuất tất cả các trang, hãy đặt tùy chọn allPages thành

    <script src="https://cdnjs.cloudflare.com/ajax/libs/jszip/2.4.0/jszip.min.js"></script>

    <div id="grid"></div>
    <script>
        $("#grid").kendoGrid({
            toolbar: ["excel"],
            excel: {
                allPages: true
            },
            dataSource: {
                type: "odata",
                transport: {
                    read: "https://demos.telerik.com/kendo-ui/service/Northwind.svc/Products"
                },
                pageSize: 7
            },
            pageable: true,
            columns: [
                { width: 300, field: "ProductName", title: "Product Name" },
                { field: "UnitsOnOrder", title: "Units On Order" },
                { field: "UnitsInStock", title: "Units In Stock" }
            ]
        });
    </script>
0

Khi tùy chọn allPages được đặt thành

    <script src="https://cdnjs.cloudflare.com/ajax/libs/jszip/2.4.0/jszip.min.js"></script>

    <div id="grid"></div>
    <script>
        $("#grid").kendoGrid({
            toolbar: ["excel"],
            excel: {
                allPages: true
            },
            dataSource: {
                type: "odata",
                transport: {
                    read: "https://demos.telerik.com/kendo-ui/service/Northwind.svc/Products"
                },
                pageSize: 7
            },
            pageable: true,
            columns: [
                { width: 300, field: "ProductName", title: "Product Name" },
                { field: "UnitsOnOrder", title: "Units On Order" },
                { field: "UnitsInStock", title: "Units In Stock" }
            ]
        });
    </script>
0 và
    <script src="https://cdnjs.cloudflare.com/ajax/libs/jszip/2.4.0/jszip.min.js"></script>

    <div id="grid"></div>
    <script>
        $("#grid").kendoGrid({
            toolbar: ["excel"],
            excel: {
                allPages: true
            },
            dataSource: {
                type: "odata",
                transport: {
                    read: "https://demos.telerik.com/kendo-ui/service/Northwind.svc/Products"
                },
                pageSize: 7
            },
            pageable: true,
            columns: [
                { width: 300, field: "ProductName", title: "Product Name" },
                { field: "UnitsOnOrder", title: "Units On Order" },
                { field: "UnitsInStock", title: "Units In Stock" }
            ]
        });
    </script>
3 được bật, Lưới sẽ đưa ra yêu cầu
    <script src="https://cdnjs.cloudflare.com/ajax/libs/jszip/2.4.0/jszip.min.js"></script>

    <div id="grid"></div>
    <script>
        $("#grid").kendoGrid({
            toolbar: ["excel"],
            excel: {
                allPages: true
            },
            dataSource: {
                type: "odata",
                transport: {
                    read: "https://demos.telerik.com/kendo-ui/service/Northwind.svc/Products"
                },
                pageSize: 7
            },
            pageable: true,
            columns: [
                { width: 300, field: "ProductName", title: "Product Name" },
                { field: "UnitsOnOrder", title: "Units On Order" },
                { field: "UnitsInStock", title: "Units In Stock" }
            ]
        });
    </script>
4 cho tất cả dữ liệu. Nếu các mục dữ liệu quá nhiều, trình duyệt có thể không phản hồi. Trong những trường hợp như vậy, sử dụng

    <script src="https://cdnjs.cloudflare.com/ajax/libs/jszip/2.4.0/jszip.min.js"></script>

    <div id="grid"></div>
    <script>
        $("#grid").kendoGrid({
            toolbar: ["excel"],
            excel: {
                allPages: true
            },
            dataSource: {
                type: "odata",
                transport: {
                    read: "https://demos.telerik.com/kendo-ui/service/Northwind.svc/Products"
                },
                pageSize: 7
            },
            pageable: true,
            columns: [
                { width: 300, field: "ProductName", title: "Product Name" },
                { field: "UnitsOnOrder", title: "Units On Order" },
                { field: "UnitsInStock", title: "Units In Stock" }
            ]
        });
    </script>

Để tùy chỉnh tệp Excel đã tạo, hãy sử dụng sự kiện

    <script src="https://cdnjs.cloudflare.com/ajax/libs/jszip/2.4.0/jszip.min.js"></script>

    <div id="grid"></div>
    <script>
        $("#grid").kendoGrid({
            toolbar: ["excel"],
            excel: {
                allPages: true
            },
            dataSource: {
                type: "odata",
                transport: {
                    read: "https://demos.telerik.com/kendo-ui/service/Northwind.svc/Products"
                },
                pageSize: 7
            },
            pageable: true,
            columns: [
                { width: 300, field: "ProductName", title: "Product Name" },
                { field: "UnitsOnOrder", title: "Units On Order" },
                { field: "UnitsInStock", title: "Units In Stock" }
            ]
        });
    </script>
5. Đối số sự kiện
    <script src="https://cdnjs.cloudflare.com/ajax/libs/jszip/2.4.0/jszip.min.js"></script>

    <div id="grid"></div>
    <script>
        $("#grid").kendoGrid({
            toolbar: ["excel"],
            excel: {
                allPages: true
            },
            dataSource: {
                type: "odata",
                transport: {
                    read: "https://demos.telerik.com/kendo-ui/service/Northwind.svc/Products"
                },
                pageSize: 7
            },
            pageable: true,
            columns: [
                { width: 300, field: "ProductName", title: "Product Name" },
                { field: "UnitsOnOrder", title: "Units On Order" },
                { field: "UnitsInStock", title: "Units In Stock" }
            ]
        });
    </script>
6 hiển thị cấu hình sổ làm việc Excel đã tạo

  • Để biết thêm thông tin về xuất Excel, hãy tham khảo và bài viết Giao diện Xuất Excel
  • Để biết thêm thông tin về cách đặt màu nền của các hàng xen kẽ trong khi xuất Lưới sang Excel, hãy tham khảo ví dụ này

Sự kiện

    <script src="https://cdnjs.cloudflare.com/ajax/libs/jszip/2.4.0/jszip.min.js"></script>

    <div id="grid"></div>
    <script>
        $("#grid").kendoGrid({
            toolbar: ["excel"],
            excel: {
                allPages: true
            },
            dataSource: {
                type: "odata",
                transport: {
                    read: "https://demos.telerik.com/kendo-ui/service/Northwind.svc/Products"
                },
                pageSize: 7
            },
            pageable: true,
            columns: [
                { width: 300, field: "ProductName", title: "Product Name" },
                { field: "UnitsOnOrder", title: "Units On Order" },
                { field: "UnitsInStock", title: "Units In Stock" }
            ]
        });
    </script>
5 cho phép bạn đảo ngược các ô và đặt căn chỉnh văn bản để hỗ trợ các ngôn ngữ viết từ phải sang trái (RTL). Để hiển thị tài liệu theo luồng từ phải sang trái trong Excel, hãy bật tùy chọn
    <script src="https://cdnjs.cloudflare.com/ajax/libs/jszip/2.4.0/jszip.min.js"></script>

    <div id="grid"></div>
    <script>
        $("#grid").kendoGrid({
            toolbar: ["excel"],
            excel: {
                allPages: true
            },
            dataSource: {
                type: "odata",
                transport: {
                    read: "https://demos.telerik.com/kendo-ui/service/Northwind.svc/Products"
                },
                pageSize: 7
            },
            pageable: true,
            columns: [
                { width: 300, field: "ProductName", title: "Product Name" },
                { field: "UnitsOnOrder", title: "Units On Order" },
                { field: "UnitsInStock", title: "Units In Stock" }
            ]
        });
    </script>
8 của sổ làm việc

Mỗi hàng có một trường

    <script src="https://cdnjs.cloudflare.com/ajax/libs/jszip/2.4.0/jszip.min.js"></script>

    <div id="grid"></div>
    <script>
        $("#grid").kendoGrid({
            toolbar: ["excel"],
            excel: {
                allPages: true
            },
            dataSource: {
                type: "odata",
                transport: {
                    read: "https://demos.telerik.com/kendo-ui/service/Northwind.svc/Products"
                },
                pageSize: 7
            },
            pageable: true,
            columns: [
                { width: 300, field: "ProductName", title: "Product Name" },
                { field: "UnitsOnOrder", title: "Units On Order" },
                { field: "UnitsInStock", title: "Units In Stock" }
            ]
        });
    </script>
9 có thể được sử dụng để phân biệt giữa các loại hàng khác nhau trong Lưới. Các giá trị được hỗ trợ là

  •     <script src="https://cdnjs.cloudflare.com/ajax/libs/jszip/2.4.0/jszip.min.js"></script>
    
        <div class="k-rtl">
          <div id="grid" ></div>
        </div>
        <script>
          $("#grid").kendoGrid({
            toolbar: ["excel"],
            excel: {
              allPages: true
            },
            dataSource: {
              type: "odata",
              transport: {
                read: "https://demos.telerik.com/kendo-ui/service/Northwind.svc/Products"
              },
              pageSize: 7
            },
            excelExport: function(e) {
              var workbook = e.workbook;
              var sheet = workbook.sheets[0];
    
              workbook.rtl = true;
              for (var i = 0; i < sheet.rows.length; i++) {
                for (var ci = 0; ci < sheet.rows[i].cells.length; ci++) {
                  sheet.rows[i].cells[ci].hAlign = "right";
                }
              }
            },
            pageable: true,
            columns: [
              { width: 300, field: "ProductName", title: "Product Name" },
              { field: "UnitsOnOrder", title: "Units On Order" },
              { field: "UnitsInStock", title: "Units In Stock" }
            ]
          });
        </script>
    
    0
  •     <script src="https://cdnjs.cloudflare.com/ajax/libs/jszip/2.4.0/jszip.min.js"></script>
    
        <div class="k-rtl">
          <div id="grid" ></div>
        </div>
        <script>
          $("#grid").kendoGrid({
            toolbar: ["excel"],
            excel: {
              allPages: true
            },
            dataSource: {
              type: "odata",
              transport: {
                read: "https://demos.telerik.com/kendo-ui/service/Northwind.svc/Products"
              },
              pageSize: 7
            },
            excelExport: function(e) {
              var workbook = e.workbook;
              var sheet = workbook.sheets[0];
    
              workbook.rtl = true;
              for (var i = 0; i < sheet.rows.length; i++) {
                for (var ci = 0; ci < sheet.rows[i].cells.length; ci++) {
                  sheet.rows[i].cells[ci].hAlign = "right";
                }
              }
            },
            pageable: true,
            columns: [
              { width: 300, field: "ProductName", title: "Product Name" },
              { field: "UnitsOnOrder", title: "Units On Order" },
              { field: "UnitsInStock", title: "Units In Stock" }
            ]
          });
        </script>
    
    1
  •     <script src="https://cdnjs.cloudflare.com/ajax/libs/jszip/2.4.0/jszip.min.js"></script>
    
        <div class="k-rtl">
          <div id="grid" ></div>
        </div>
        <script>
          $("#grid").kendoGrid({
            toolbar: ["excel"],
            excel: {
              allPages: true
            },
            dataSource: {
              type: "odata",
              transport: {
                read: "https://demos.telerik.com/kendo-ui/service/Northwind.svc/Products"
              },
              pageSize: 7
            },
            excelExport: function(e) {
              var workbook = e.workbook;
              var sheet = workbook.sheets[0];
    
              workbook.rtl = true;
              for (var i = 0; i < sheet.rows.length; i++) {
                for (var ci = 0; ci < sheet.rows[i].cells.length; ci++) {
                  sheet.rows[i].cells[ci].hAlign = "right";
                }
              }
            },
            pageable: true,
            columns: [
              { width: 300, field: "ProductName", title: "Product Name" },
              { field: "UnitsOnOrder", title: "Units On Order" },
              { field: "UnitsInStock", title: "Units In Stock" }
            ]
          });
        </script>
    
    2
  •     <script src="https://cdnjs.cloudflare.com/ajax/libs/jszip/2.4.0/jszip.min.js"></script>
    
        <div class="k-rtl">
          <div id="grid" ></div>
        </div>
        <script>
          $("#grid").kendoGrid({
            toolbar: ["excel"],
            excel: {
              allPages: true
            },
            dataSource: {
              type: "odata",
              transport: {
                read: "https://demos.telerik.com/kendo-ui/service/Northwind.svc/Products"
              },
              pageSize: 7
            },
            excelExport: function(e) {
              var workbook = e.workbook;
              var sheet = workbook.sheets[0];
    
              workbook.rtl = true;
              for (var i = 0; i < sheet.rows.length; i++) {
                for (var ci = 0; ci < sheet.rows[i].cells.length; ci++) {
                  sheet.rows[i].cells[ci].hAlign = "right";
                }
              }
            },
            pageable: true,
            columns: [
              { width: 300, field: "ProductName", title: "Product Name" },
              { field: "UnitsOnOrder", title: "Units On Order" },
              { field: "UnitsInStock", title: "Units In Stock" }
            ]
          });
        </script>
    
    3
  •     <script src="https://cdnjs.cloudflare.com/ajax/libs/jszip/2.4.0/jszip.min.js"></script>
    
        <div class="k-rtl">
          <div id="grid" ></div>
        </div>
        <script>
          $("#grid").kendoGrid({
            toolbar: ["excel"],
            excel: {
              allPages: true
            },
            dataSource: {
              type: "odata",
              transport: {
                read: "https://demos.telerik.com/kendo-ui/service/Northwind.svc/Products"
              },
              pageSize: 7
            },
            excelExport: function(e) {
              var workbook = e.workbook;
              var sheet = workbook.sheets[0];
    
              workbook.rtl = true;
              for (var i = 0; i < sheet.rows.length; i++) {
                for (var ci = 0; ci < sheet.rows[i].cells.length; ci++) {
                  sheet.rows[i].cells[ci].hAlign = "right";
                }
              }
            },
            pageable: true,
            columns: [
              { width: 300, field: "ProductName", title: "Product Name" },
              { field: "UnitsOnOrder", title: "Units On Order" },
              { field: "UnitsInStock", title: "Units In Stock" }
            ]
          });
        </script>
    
    4
    <script src="https://cdnjs.cloudflare.com/ajax/libs/jszip/2.4.0/jszip.min.js"></script>

    <div class="k-rtl">
      <div id="grid" ></div>
    </div>
    <script>
      $("#grid").kendoGrid({
        toolbar: ["excel"],
        excel: {
          allPages: true
        },
        dataSource: {
          type: "odata",
          transport: {
            read: "https://demos.telerik.com/kendo-ui/service/Northwind.svc/Products"
          },
          pageSize: 7
        },
        excelExport: function(e) {
          var workbook = e.workbook;
          var sheet = workbook.sheets[0];

          workbook.rtl = true;
          for (var i = 0; i < sheet.rows.length; i++) {
            for (var ci = 0; ci < sheet.rows[i].cells.length; ci++) {
              sheet.rows[i].cells[ci].hAlign = "right";
            }
          }
        },
        pageable: true,
        columns: [
          { width: 300, field: "ProductName", title: "Product Name" },
          { field: "UnitsOnOrder", title: "Units On Order" },
          { field: "UnitsInStock", title: "Units In Stock" }
        ]
      });
    </script>

Theo mặc định, mỗi Lưới xuất nội dung của nó trong một trang tính Excel riêng biệt. Để biết thêm thông tin, hãy tham khảo ví dụ về cách xuất nhiều Lưới trong một tài liệu Excel

Để gửi tệp đã tạo đến một dịch vụ từ xa, hãy ngăn lưu tệp mặc định và đăng nội dung được mã hóa

    <script src="https://cdnjs.cloudflare.com/ajax/libs/jszip/2.4.0/jszip.min.js"></script>

    <div class="k-rtl">
      <div id="grid" ></div>
    </div>
    <script>
      $("#grid").kendoGrid({
        toolbar: ["excel"],
        excel: {
          allPages: true
        },
        dataSource: {
          type: "odata",
          transport: {
            read: "https://demos.telerik.com/kendo-ui/service/Northwind.svc/Products"
          },
          pageSize: 7
        },
        excelExport: function(e) {
          var workbook = e.workbook;
          var sheet = workbook.sheets[0];

          workbook.rtl = true;
          for (var i = 0; i < sheet.rows.length; i++) {
            for (var ci = 0; ci < sheet.rows[i].cells.length; ci++) {
              sheet.rows[i].cells[ci].hAlign = "right";
            }
          }
        },
        pageable: true,
        columns: [
          { width: 300, field: "ProductName", title: "Product Name" },
          { field: "UnitsOnOrder", title: "Units On Order" },
          { field: "UnitsInStock", title: "Units In Stock" }
        ]
      });
    </script>
5

    <script src="https://cdnjs.cloudflare.com/ajax/libs/jszip/2.4.0/jszip.min.js"></script>

    <div id="grid"></div>
    <script>
        $("#grid").kendoGrid({
            toolbar: ["excel"],
            dataSource: {
                type: "odata",
                transport: {
                    read: "https://demos.telerik.com/kendo-ui/service/Northwind.svc/Products"
                },
                pageSize: 7
            },
            pageable: true,
            columns: [
                { width: 300, field: "ProductName", title: "Product Name" },
                { field: "UnitsOnOrder", title: "Units On Order" },
                { field: "UnitsInStock", title: "Units In Stock" }
            ],
            excelExport: function(e) {
                // Prevent the default behavior which will prompt the user to save the generated file.
                e.preventDefault();
                // Get the Excel file as a data URL.
                var dataURL = new kendo.ooxml.Workbook(e.workbook).toDataURL();
                // Strip the data URL prologue.
                var base64 = dataURL.split(";base64,")[1];
                // Post the base64 encoded content to the server which can save it.
                $.post("/server/save", {
                    base64: base64,
                    fileName: "ExcelExport.xlsx"
                });
            }
        });
    </script>

Để xuất các bộ dữ liệu khổng lồ sang Excel, hãy sử dụng thư viện RadSpreadStreamProcessing là một phần của Xử lý tài liệu Telerik (TDP) của Progress

  • Để biết các ví dụ về xuất tệp Excel, hãy tham khảo thư viện RadSpreadProcessing
  • Để biết thêm thông tin về quá trình xử lý phía máy chủ Grid, hãy tham khảo

Trong một số trường hợp, bạn có thể muốn ẩn cột đã cho hoặc nhiều cột khỏi xuất. Điều này có thể đạt được bằng cách sử dụng cài đặt Có thể xuất

Nó cũng có thể được đặt thành một Đối tượng chứa các giá trị khác nhau cho các chế độ xuất Excel và PDF, cung cấp các tùy chọn riêng cho từng chế độ

columns: [
   { 
       field: 'ContactTitle',
       exportable: { pdf: true, excel: false }
   }
]