В скриптах Google, как вы передаете переменную doc url в оператор href? - PullRequest
0 голосов
/ 18 февраля 2019

У меня есть связанный скрипт Google в Google Sheets, который создает меню и заполняет меню OnOpen листа множеством функций.Одна функция создает новый Google Doc.Затем я хочу открыть этот документ, но не могу понять, как передать URL документа в оператор href.См. Код ниже:

function createLandscapeLyricDoc() {
  var doc = DocumentApp.create('Rename');
  var title = "replace with song title and then link this text to song title cell in Catalog Spreadsheet"
  var url = doc.getUrl();
  var body = doc.getBody();
  var paragraph = body.insertParagraph(0, "");
  var text1 = paragraph.appendText("© replace with writer(s)");
  text1.setFontSize(8);
  var rowsData = [['PUT FIRST VERSE/CHORUS HERE.  (SUGGEST USE ALL CAPS.)', 'PUT SECOND VERSE/NEXT CHORUS/BRIDGE/ETC HERE.']];
  var style = {};
  body.insertParagraph(0, title)
  .setHeading(DocumentApp.ParagraphHeading.HEADING3);
  table = body.appendTable(rowsData);
  style[DocumentApp.Attribute.BORDER_WIDTH] = 0;
  table.setAttributes(style);
  /*line below is the one that does not work as the variable "url" is not being read correctly (as I don't know how to use it or if this can even be done)*/
  var html = "<a href= 'url'; target='_blank'>Open 1-Column Lyric Template</a>";
  var selection = SpreadsheetApp.getActiveSheet();
  var userInterface = HtmlService.createHtmlOutput(html);
  SpreadsheetApp.getUi().showModalDialog(userInterface, 'Open Landscape New Lyric Doc'); 

Было высказано предположение, что на этот вопрос уже был дан ответ здесь , и хотя я могу понять, почему было сделано это предложение, у меня есть следующие замечания:

1) Я слишком новичок в кодировании сценариев Google, чтобы знать достаточно терминологии, чтобы сформировать поисковый запрос в Stack Overflow, чтобы найти этот ответ.И на самом деле, если бы я каким-то образом наткнулся на этот «ответ», я не уверен, что узнал бы его как таковой, поскольку весь код настолько отличается от кода, с которым я боролся.

2) Это решениене показывался как один из предложенных для ознакомления, прежде чем я задал свой вопрос.

Учитывая эти два момента вместе, особенно для начинающих программистов, я думаю, что мой вопрос на этом сайте будет полезен для других, которыесоответствуют моему профилю (а не опытному программисту), потому что этот вопрос и ответ, вероятно, будут отображаться для других, пытающихся сделать то, что я пытался / пытаюсь сделать, тогда как Как использовать переменную внутри строки Вопросы и ответыне будет.

Ответы [ 2 ]

0 голосов
/ 20 февраля 2019

Я считаю, что делать это таким образом в сложных строках несколько проще.

var html = Utilities.formatString('<a href="%s" target="_blank">Open 1-Column Lyric Template</a>',url);

0 голосов
/ 18 февраля 2019

Сэнди Гуд ответила:

var html = '<a href= "' + url + '"; target="_blank">Open 1-Column Lyric Template</a>;'
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...