Google apps script onFormsSubmit(e)和#x27;s e是空的
所以,我道歉,如果这是愚蠢的,因为我是新的谷歌脚本和谷歌表单 我想评估用户输入的字段值。我特别不希望使用电子表格 当然,网上有很多帖子,说明了原则上如何做到这一点。可以使用“e”的“values”或“namedValues”属性传递给以下函数:Google apps script onFormsSubmit(e)和#x27;s e是空的,google-apps-script,google-forms,Google Apps Script,Google Forms,所以,我道歉,如果这是愚蠢的,因为我是新的谷歌脚本和谷歌表单 我想评估用户输入的字段值。我特别不希望使用电子表格 当然,网上有很多帖子,说明了原则上如何做到这一点。可以使用“e”的“values”或“namedValues”属性传递给以下函数: function onFormSubmit(e){...} 但是,如果我这样做,并填写和提交表格,e.值是未定义的 简单的 function onFormSubmit(e) { Logger.log(e); Logger.log(e.value
function onFormSubmit(e){...}
但是,如果我这样做,并填写和提交表格,e.值是未定义的
简单的
function onFormSubmit(e) {
Logger.log(e);
Logger.log(e.values);
Logger.log(e.namedValues);
}
给我
[19-01-20 11:16:10:564 CET] [object Object]
[19-01-20 11:16:10:565 CET] undefined
[19-01-20 11:16:10:566 CET] undefined
我在这里什么都不做,我只是:
1) 创建一个带有一个字段的表单
2) 打开脚本,从上面添加函数
3) 已将提交触发器连接到函数
我错过了什么
Max下面是一个将表单传递到服务器端code.gs的示例
<!DOCTYPE html>
<html>
<head>
<base target="_top">
</head>
<body>
<form id="myForm" method="get">
First name: <input type="text" name="fname"><br>
Last name: <input type="text" name="lname"><br>
<input type="button" value="Submit" onclick="buttonOnClick()">
</form>
<script>
function buttonOnClick() {
var form = document.getElementById("myForm");
google.script.run.doSomething(form);
}
</script>
</body>
</html>
阅读文档。您在哪里发现
e
中提供了值和namedValues
?您的脚本是绑定到表单还是电子表格?虽然我不确定这是否是问题的直接原因,但我可以问一下您项目中的范围吗?如果可以显示它们,请在脚本编辑器中检索它们文件->项目属性->范围。如果https://www.googleapis.com/auth/forms
不包括在作用域中,例如,在脚本中添加注释行//FormApp.getActiveForm()
?放好后,请重新安装触发器。这样,这个范围就可以反映出来。如果这对你的情况没有帮助,我道歉。抱歉,我认为这不能回答我的问题。我自己实现这个表单,但使用的是谷歌表单。
function doSomething(form) {
Logger.log(form);
Logger.log(form.fname);
Logger.log(form.lname);
}