如何将滚动条添加到GAS模态对话框?

时间:2015-11-15 02:55:11

标签: scroll google-apps-script dialog modal-dialog

我想知道如何在我的Google Apps脚本代码中添加滚动条,以便滚动对话框中的项目列表。

我的代码的补充工具栏方法(除了showModalDialog与showSidebar相同)是滚动,但是Dialog方法没有。

我尝试过添加overflow:auto;和溢出:滚动;基本上我可以找到的所有div,没有结果(虽然GAS中的iFrame应该已经设置为auto?)。

我能找到的与Apps脚本,对话框和滚动条有关的唯一信息是app.createScrollPanel,去年已被弃用。

以下是我正在使用的代码:

function showSidebarAdd() {
var ui = SpreadsheetApp.getUi();
  var addUi = HtmlService.createTemplate(getAddUi()).evaluate().getContent();
  var html = HtmlService.createTemplate(addUi+
                                       "<script>\n" +
                                       "var data = "+
                                       getInvData()+
                                       "</script>")
                                       .evaluate()
                                       .setTitle('Add Items to Inventory')
                                       .setSandboxMode(HtmlService.SandboxMode.IFRAME)
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  ss.setActiveSheet(ss.getSheetByName('Unsorted Inventory'));
  ui.showSidebar(html);
}

function showDialogAdd() {
  var ui = SpreadsheetApp.getUi();
  var addUi = HtmlService.createTemplate(getAddUi()).evaluate().getContent();
  var html = HtmlService.createTemplate(addUi+
                                       "<script>\n" +
                                       "var data = "+
                                       getInvData()+
                                       "</script>")
                                       .evaluate()
                                       .setSandboxMode(HtmlService.SandboxMode.IFRAME)
                                       .setWidth(500)
                                       .setHeight(850)
  SpreadsheetApp.getUi() // Or DocumentApp or FormApp.
    var ss = SpreadsheetApp.getActiveSpreadsheet();
    ss.setActiveSheet(ss.getSheetByName('Unsorted Inventory'));
    ui.showModalDialog(html,'Add Items to Inventory');
}

这是滚动条版本的样子: Sidebar

这是对话框版本的样子: Dialog

希望它可以在对话框中完成,因为我更喜欢列表采用自定义尺寸的弹出式样式,而不是压缩到侧边栏

提前致谢!

2 个答案:

答案 0 :(得分:0)

  

“要调整已打开的对话框的大小,请在客户端代码中调用google.script.host.setWidth(width)。”

Google Documentation

答案 1 :(得分:0)

解决了我的问题!通过在创建对话框时删除.setHeight(),滚动条会自动显示并正常工作。

相关问题