我正在创建一个包含表单的网页,我必须将数据发送到Google电子表格。 I found a good code searching this site但我不知道如何编辑它以将我的数据存储在Google电子表格中。
我的表单是这样制作的
<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>
脚本是相同的,从我链接的示例(我刚刚因为错误而更改了函数名)
function doPost(e){
var id = "";
var name = e.parameter['name'];
var surname = e.parameter['surname'];
var serial = e.parameter['serial'];
var eMail = e.parameter['email'];
var text = e.parameter['text'];
var date = new Date();
var ans = ""
var flag = "WIP";
var vals = [id, date, name, surname, serial, eMail, text, ans, flag];
var sheetObj = SpreadsheetApp.openById("myKey").getSheetByName('Requests').appendRow(vals);
// return ContentService.createTextOutput(e);
}
如果我以这种方式填写表格:
在我的电子表格中,我按以下顺序查看数据:
[DATE] [Serial] [Mail] [Name] [Surname]
如何修改函数以我可以决定的某种顺序将我的数据放入电子表格中?
[更新] :我更新了代码:结果是一行正确排序,但填充了“未定义”......
答案 0 :(得分:2)
提交表单后,您可以使用e.parameter[<parameter_name>]
获取表单参数。
例如获取姓氏,
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]);
希望这有帮助。