【发布时间】:2014-03-03 17:32:06
【问题描述】:
我希望有人以前看过这个,我正在使用 Google 表单,并且在提交时,使用 Google Apps 脚本将响应 ID 存储在单独的电子表格中,以便将来存储更多元数据(ID 获得来自 onSubmit 事件响应中的方法e.response.getId())。在第一次提交 Google 表单时,我将响应 ID 记录在新工作表中。
我可以通过form.getResponse(responseIdStoredInSheet) 加载响应,但是,当我循环通过form.getResponses() 返回的响应并在返回的那些FormResponses 上调用.getId() 时,最后的Id 略有改变。我在文档和网上搜索了一个下午,以了解为什么会发生这种情况,但无济于事。
function testResponseIds()
{
var responseIdStoredInSheet = 'ChMxNzM4MDQzNzQ5MjQyNDc0Njg4EAA';
//only response in the form
var formResponse = form.getResponse(responseIdStoredInSheet);
//outputs as expected above - ChMxNzM4MDQzNzQ5MjQyNDc0Njg4EAA
Logger.log(formResponse.getId());
//loop through all responses (only above response is present)
var formResponses = form.getResponses();
for (var i = 0; i < formResponses.length; i++)
{
//Outputs slightly different Id - ChMxNzM4MDQzNzQ5MjQyNDc0Njg4EJ2kvMHLzsOvdg
Logger.log(formResponses[i].getId());
}
}
上面的记录输出:
[14-03-03 17:12:51:259 GMT] ChMxNzM4MDQzNzQ5MjQyNDc0Njg4EAA
[14-03-03 17:12:51:279 GMT] ChMxNzM4MDQzNzQ5MjQyNDc0Njg4EJ2kvMHLzsOvdg
【问题讨论】:
标签: google-apps-script google-forms