Google apps script 如何在新的谷歌应用程序页面中接收参数

Google apps script 如何在新的谷歌应用程序页面中接收参数,google-apps-script,Google Apps Script,从我的Index.html页面,我通过以下链接将参数带到我的Trabajo.html页面: https://script.google.com/macros/s/************/exec?page=Trabajos&item=23 但是我不知道如何接收页面“Trabajo.html”上的变量“item” Codigo.html function getScriptUrl() { var url = ScriptApp.getService().getUrl(); retu

从我的Index.html页面,我通过以下链接将参数带到我的Trabajo.html页面:

https://script.google.com/macros/s/************/exec?page=Trabajos&item=23
但是我不知道如何接收页面“Trabajo.html”上的变量“item”

Codigo.html

function getScriptUrl() {
 var url = ScriptApp.getService().getUrl();
 return url;
}
Html

 <script src="//code.jquery.com/jquery-1.10.2.js"></script>
 <link rel="stylesheet" href="https://ssl.gstatic.com/docs/script/css/add-ons.css">

 <html>
    <head>
      <base target="_top">
   </head>
<body>
   <?var url = getScriptUrl();?><a href='<?=url?>?page=Trabajos&item=23' target="_blank"> <input type='button' name='button' value='Trabajos.html'></a>
</body>
 </html>

Trabajos.html

 <script src="//code.jquery.com/jquery-1.10.2.js"></script>
 <link rel="stylesheet" href="https://ssl.gstatic.com/docs/script/css/add-ons.css">
 <!DOCTYPE html>
  <html>
   <head>
       <base target="_top">
   </head>
   <body>
      <br><br>
      //Here I want to show the value of the item, and also in a <script>
      <input type='text' value='<?=item?>' >
      <br><br>
      <?var url = getScriptUrl();?><a href='<?=url?>?page=Index'> <input type='button' name='button' value='Index.html'></a>
    </body>
  </html>



//在这里,我想显示该项的值,并且以

我不知道如何接收item变量,如果我的代码是这样的,我该怎么做?

似乎您需要使用模板

function doGet() {
  var htmlTemplate = HtmlService.createTemplateFromFile('Trabajos');
  htmlTemplate.item = 'Set the item here';
  return htmlTemplate.evaluate();
}

我假设你正在创建一个谷歌

  • Google Web应用程序通常包括一个
    code.gs
    (而不是
    code.html
    )文件和一个
    .html
    文件,打开Web应用程序url时将返回该文件

  • Web应用程序的一个关键部分是返回要调用的html文件的函数

  • 在您的情况下,您有两个
    .html
    文件要使用相同的Web应用程序url打开
  • 在这种情况下,您需要在
    doGet()
    函数中区分大小写,以在
    项的函数中创建不同的html模板
  • 从url
    https://script.google.com/macros/s/************/exec?page=Trabajos&item=23
    对于
    .html
    文件,您需要在
    doGet()
    函数中将其作为
    e.parameter
    检索,并将其传递给
    htmlTemplate
示例:

代码.gs


Index.html
Trabajos.html
可以按原样保留此示例。

可能的重复在javascript中与在google应用程序中不同,不是相同的请添加您的doGet。对不起,我无法问您的答案。。。我会编辑我的问题,这样我就能理解我的代码了,我得到了这个错误-->“ReferenceError:item”没有estádefinido。(línea 25,archivo“Código”,proyecto“Inci”)”
function doGet(e){
   var item=e.parameter.item;  
  if(item==23){
     var htmlTemplate = HtmlService.createTemplateFromFile('Trabajos');
         htmlTemplate.item = item;
  }else if(item==24){
    ...
  }
  }else if(!item){
     var htmlTemplate = HtmlService.createTemplateFromFile('Index');
  }
  ...
  return htmlTemplate.evaluate();
}


function getScriptUrl() {
 var url = ScriptApp.getService().getUrl();
 return url;
}