Html 如何使用谷歌应用程序脚本正确写入谷歌电子表格?

Html 如何使用谷歌应用程序脚本正确写入谷歌电子表格?,html,google-apps-script,google-sheets,Html,Google Apps Script,Google Sheets,我正在创建一个带有表单的网页,我必须将数据发送到谷歌电子表格。但我不知道如何编辑它来将我的数据存储在谷歌电子表格中 我的表格是这样做的 <form name="reqForm" id="reqForm" method="get" action="SCRIPT" accept-charset="UTF-8"> <input type="hidden" name="reqID" id="reqID" /> <label f

我正在创建一个带有表单的网页,我必须将数据发送到谷歌电子表格。但我不知道如何编辑它来将我的数据存储在谷歌电子表格中

我的表格是这样做的

<form name="reqForm" id="reqForm" method="get" action="SCRIPT" accept-charset="UTF-8">
            <input type="hidden" name="reqID" id="reqID" />
            <label for="name">Name:</label>
               <input type="text" name="Name" id="Name"/>
            <label for="surname">Surname:</label>
               <input type="text" name="surname" id="surname"/>
            <label for="SERIAL">Serial:</label>
               <input type="text" name="serial" id="serial"/>
            <label for="email">E-mail:</label>
               <input type="text" name="email" id="mail"/>
            <label for="text">Request:</label>
               <textarea id="text"></textarea>
               <input type="submit" value="Send" />
</form>
}

如果我以这种方式填写表格:

  • 姓名:约翰
  • 姓:多伊
  • 序列号:123456
  • 电邮:123@456.com
  • 请求:你好
在我的电子表格中,我看到的数据顺序如下:
[日期][序列][邮件][姓名][姓氏]

如何修改函数,以我可以决定的某种顺序将数据放入电子表格


[更新]:我更新了代码:结果是一行顺序正确,但填充了“未定义”…

提交表单后,您可以使用
e.parameter[]
获取表单参数

例如,要获得姓氏

var surname = e.parameter['surname'];
要在Google电子表格中插入表单数据

var sheetObj = SpreadsheetApp.openById("myKey").getSheetByName("sheetname");
//Here you can shuffle the order of values anyway you want.
sheetObj.appendRow([DATE, Serial, Mail, Name, Surname]);
//or you can do it like this
sheetObj.appendRow([DATE, Mail, Name, Surname, Serial]);

希望这有帮助。

提交表单后,您可以使用
e.parameter[]
获取表单参数

例如,要获得姓氏

var surname = e.parameter['surname'];
要在Google电子表格中插入表单数据

var sheetObj = SpreadsheetApp.openById("myKey").getSheetByName("sheetname");
//Here you can shuffle the order of values anyway you want.
sheetObj.appendRow([DATE, Serial, Mail, Name, Surname]);
//or you can do it like this
sheetObj.appendRow([DATE, Mail, Name, Surname, Serial]);

希望这能有所帮助。

表单标签中的方法是GET:
method=“GET”
应用程序脚本文件中的函数名是
doPost()
,这不起作用。您要么需要发出POST请求,要么使用
doGet()
So。GET for
doGet()
和POST for
doPost()
它们需要匹配。是的,我找到了,但是当我尝试使用method=“POST”时,出现了一个错误,它说它找不到函数doPost。这就是为什么我写了“我因为一个错误而不得不更改”表单标记中的方法是GET:
method=“GET”
应用程序脚本文件中的函数名是
doPost()
,这不起作用。您要么需要发出POST请求,要么使用
doGet()
So。GET for
doGet()
和POST for
doPost()
它们需要匹配。是的,我找到了,但是当我尝试使用method=“POST”时,出现了一个错误,它说它找不到函数doPost。这就是为什么我写了“因为一个错误我不得不改变”嗨!谢谢你的回复!我尝试了这种方法,但函数似乎无法识别参数。我听从了你的建议,但现在它只给我日期,因为我在代码中生成了它,其他值消失了。你是否将脚本部署为具有更新版本的web应用程序?如果你没有,脚本将执行旧版本的代码是的,但它似乎根本不起作用(我将输出更改为检查,它仍然是一样的…)我将尝试创建一个全新的脚本…如果可能,与我们共享一个虚拟脚本OK我创建了一个新项目,填充正在工作,除了我现在看到我的行充满了“未定义“嗨!谢谢你的回复!我尝试了这种方法,但函数似乎无法识别参数。我听从了你的建议,但现在它只给我日期,因为我在代码中生成了它,其他值消失了。你是否将脚本部署为具有更新版本的web应用程序?如果你没有,脚本将执行旧版本的代码是的,但它似乎根本不起作用(我将输出更改为检查,它仍然是一样的…)我将尝试创建一个全新的脚本…如果可能,与我们共享一个虚拟脚本OK我创建了一个新项目,填充正在工作,除了我现在看到我的行充满了“未定义”