【发布时间】:2021-10-07 18:59:18
【问题描述】:
我有一个 javascript 函数,它应该创建一个动态行数和 4 列的表
谁能告诉我为什么我在运行这个脚本时遇到错误?
var cellText = data [row] [col]; -> 出现错误的地方
我已经单独查看了数组(数据)并填充了它。
下面是我的 javascript 和 html 代码:
function getHtmlTable(table){
var ws = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("Emails")
var Avals = ws.getRange("A1:A").getValues();
var Alast = Avals.filter(String).length;
var data = ws.getRange(4, 1, (Alast-3), 4).getValues();
var rangito = ws.getRange("A4");
// Read table content
var fontColors = rangito.getFontColors();
var backgrounds = rangito.getBackgrounds();
var fontFamilies = rangito.getFontFamilies();
var fontSizes = rangito.getFontSizes();
var fontLines = rangito.getFontLines();
var fontWeights = rangito.getFontWeights();
var horizontalAlignments = rangito.getHorizontalAlignments();
var verticalAlignments = rangito.getVerticalAlignments();
var col= 1;
var row= 1;
// Build HTML Table, with inline styling for each cell
var tableFormat = 'style="border:1px solid black;border-collapse:collapse;text-align:center" border = 1 cellpadding = 5';
var html = ['<table '+tableFormat+'>'];
// Populate rows
for (row= 0;row <= Alast;row++) {
html.push('<tr style="height: 19px;">');
for (col= 0 ;col <= 4;col++) {
// Get formatted data
var cellText = data[row][col];
var style = 'style="'
+ 'font-family: ' + fontFamilies[row][col]+'; '
+ 'font-size: ' + fontSizes[row][col]+'; '
+ 'font-weight: ' + fontWeights[row][col]+'; '
+ 'background-color: ' + backgrounds[row][col]+'; '
+ 'text-align: ' + horizontalAlignments[row][col]+'; '
+ 'vertical-align: ' + verticalAlignments[row][col]+'; '
+'"';
html.push('<td ' + style + '>'
+cellText
+'</td>');
}
html.push('</tr>');
}
html.push('</table>');
return html.join('');
}
【问题讨论】:
-
for (row= 0;row <= Alast;row++)row < Alast -
出错时
data、row和col的值是多少?
标签: javascript html css google-apps-script