将Web文档对象转换为电子表格函数

时间:2016-07-27 16:52:50

标签: google-apps-script google-sheets

使用和电子表格,我有一个HTML网页填充一些文本框,并在删除csv文件时创建一些谷歌图表(这不是一个表格)

enter image description here

我需要创建一个函数,让我解析文本框的值以填充电子表格,这是我的代码到目前为止:

Tablas.html(我试图将所有文档对象作为参数传递)

    <input id="cmd" onclick="formSubmit()" type="button" value="Descargar SnapShot">
    <script type="text/javascript">
    function formSubmit() {
    google.script.run.getValuesFromForm(document);
    }

和gs脚本:(以文档作为参数,我正在尝试恢复名为“modequ”的文本框以填充电子表格中的新行)

    function getValuesFromForm(document){
    var ssID   = "12GvIStMKqmRFNBM-C67NCDeb89-c55K7KQtcuEYmJWQ",
    sheet  = SpreadsheetApp.openById(ssID).getSheets()[0],
    modequ = document.getElementById("modequ").value;
    sheet.appendRow([modequ]);
    }

有没有办法连接用电子表格制作的页面中的所有文档对象,以便我可以追加并处理它?我想,如果我传递了所有的文档对象,那么这是可能的。

此致

1 个答案:

答案 0 :(得分:2)

document.getElementById()方法从HTML中返回id属性的引用,它需要位于 formSubmit()函数内:

  function formSubmit() {
    var modequ = document.getElementById('modequ').value;
    google.script.run.getValuesFromForm(modequ);
  }

通过这种方式,您可以单独获取所有值,然后将其作为参数传递,例如google.script.run.getValuesFromForm(modequ, tipmoto, smr)

但是,如果要传递所有表单元素然后按名称获取它们,可以执行以下操作:

<强> HTML

<!DOCTYPE html>
<html>
  <head>
    <base target="_top">
  </head>
  <body>
   <form id="form" name="form">
     <input name="modequ" type="text">
     <input name="tipmoto" type="text">
     <input name="series" type="text">
     <input id="cmd" onclick="formSubmit()" type="button" value="Descargar SnapShot">
   </form>
  </body>
</html>
<script type="text/javascript">
function formSubmit(){
   google.script.run.getValuesFromForm(document.forms[0]);
}
</script>

<强> GS

function getValuesFromForm(res){
  var ssID   = '12GvIStMKqmRFNBM-C67NCDeb89-c55K7KQtcuEYmJWQ',
      sheet  = SpreadsheetApp.openById(ssID).getSheets()[0];

  sheet.appendRow([res.modequ, res.tipmoto, res.series]);
}