gpt4 book ai didi

javascript - 从 Kendo Grid 生成的 Excel 中删除 HTML

转载 作者:行者123 更新时间:2023-12-01 00:59:51 26 4
gpt4 key购买 nike

我使用以下代码加载网格数据并从 Excel 中的页脚和组页脚中删除 HTML。我仅使用推荐的代码,但不知何故它不起作用,并且结果也没有变化。

var GridParams = function(fromDate, toDate) {
var groupSortDirection = groupByPaymentDate.value();
return {
id: divReportGrid,
showGroup: true,
serverSorting: false,
url: formUrls.gridUrl,
columns: columns(),
pageSize: 50,
showReport: true,
fileName: "Report.xlsx",
toolbar: ["excel"],
ExcelExport: function(e) {
var rows = e.workbook.sheets[0].rows;
for (var ri = 0; ri < rows.length; ri++) {
var row = rows[ri];
if (row.type == "group-footer" || row.type == "footer") {
for (var ci = 0; ci < row.cells.length; ci++) {
var cell = row.cells[ci];
if (cell.value) {
// Use jQuery.fn.text to remove the HTML and //get only the text
cell.value = $(cell.value).text();
// Set the alignment
cell.hAlign = "right";
}
}
}
}
},
data: {
"fromDate": fromDate,
"toDate": toDate,
"groupSortDirection": groupSortDirection
},
group: [{
field: "PaymentDate",
dir: groupSortDirection,
aggregates: [
// calculate max price
{
field: "CasTotal",
aggregate: "sum"
},
{
field: "ChkTotal",
aggregate: "sum"
},
{
field: "AmxTotal",
aggregate: "sum"
},
{
field: "VisTotal",
aggregate: "sum"
},
{
field: "MasTotal",
aggregate: "sum"
},
{
field: "CcrTotal",
aggregate: "sum"
},
{
field: "GcrTotal",
aggregate: "sum"
},
{
field: "DisTotal",
aggregate: "sum"
},
{
field: "CckTotal",
aggregate: "sum"
},
{
field: "SapTotal",
aggregate: "sum"
},
{
field: "IckTotal",
aggregate: "sum"
},
{
field: "Total",
aggregate: "sum"
}
]
}]
};
};

最佳答案

在您的演示中,jQuery text() 函数导致 JavaScript 错误。使用正则表达式替换:

    $("#grid").kendoGrid({
toolbar: ["excel"],
excelExport: function(e) {
var rows = e.workbook.sheets[0].rows;
for (var ri = 0; ri < rows.length; ri++) {
var row = rows[ri];
if (row.type == "group-footer" || row.type == "footer") {
for (var ci = 0; ci < row.cells.length; ci++) {
var cell = row.cells[ci];
if (cell.value) {
if (cell.value.indexOf("<div") > -1) {
var val = cell.value.replace(/<(?:.|\n)*?>/gm, '');
cell.value = val;
}
cell.hAlign = "right";
}
}
}
}
},
excel: {
fileName: "Kendo UI Grid Export.xlsx",
proxyURL: "https://demos.telerik.com/kendo-ui/service/export",
filterable: true
},

已更新 DEMO

关于javascript - 从 Kendo Grid 生成的 Excel 中删除 HTML,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56184354/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com