Javascript 列属性不适用
我可以为我的flextable调用setRowStyleAttribute,如下所示。但是,当我尝试调用setColumnStyleAttribute时,什么也没有发生 我还希望列0的格式为粗体 我没有收到任何错误消息Javascript 列属性不适用,javascript,google-apps-script,column-types,Javascript,Google Apps Script,Column Types,我可以为我的flextable调用setRowStyleAttribute,如下所示。但是,当我尝试调用setColumnStyleAttribute时,什么也没有发生 我还希望列0的格式为粗体 我没有收到任何错误消息 function doGet(){ var app = UiApp.createApplication(); var panel = app.createVerticalPanel(); var flexTable = app.createFlexTable().se
function doGet(){
var app = UiApp.createApplication();
var panel = app.createVerticalPanel();
var flexTable = app.createFlexTable().setStyleAttribute('border', '1px solid black')
.setStyleAttribute('borderCollapse','collapse')
.setBorderWidth(1);
//Add Spreadsheet Key Here
var spreadsheetId = 'MY KEY';
var dataArray = getData(spreadsheetId);
for (var row = 0; row<dataArray.length; row++){
for (var col = 0; col<dataArray[row].length; col++){
flexTable.setText(row, col, dataArray[row][col].toString());
}
}
panel.add(
flexTable.setRowStyleAttribute(1, 'fontWeight', 'bold')
.setRowStyleAttribute(6, 'fontWeight', 'bold')
//Set Column 0 to Bold?
.setColumnStyleAttribute(0, 'fontWeight', 'bold')
);
app.add(panel);
return app;
}
function getData(spreadsheetId){
var ss = SpreadsheetApp.openById(spreadsheetId);
//Select Which Sheet and The Range ---> (StartingRow, StartingCol, LengthRow, LengthCol)
var sheet = ss.getSheetByName('Sheet1').getRange(2,12,7,7);
return sheet.getValues();
}
编辑:
我已经试过了,发现“字体重量”不能与setColumnStyleAttribute一起使用。我尝试过的所有其他属性似乎都有效,但不是那一个
当然,UiApp也会贬值。虽然看起来他们没有关掉它,但如果有任何东西坏了,他们也不会修复它。他们可能会在没有通知的情况下随时关闭它
下面是一个解决方法,您可以在添加数据时在调用中设置样式:
for (var row = 0; row<dataArray.length; row++){
for (var col = 0; col<dataArray[row].length; col++){
flexTable.setText(row, col, dataArray[row][col].toString());
flexTable.setStyleAttribute(row, 0, 'font-weight', 'bold');
}
}
原职:
我认为caja的属性是“字体重量”。参考caja白名单。
谢谢你的帮助。我已经把它和setStyleAttribute一起使用了。它确实允许对每个单元格进行有针对性的格式化,只是setColumnStyleAttribute不能正常工作。