Javascript 将google表单响应发送到google日历
我最近开始了一个项目,允许不同人群之间进行沟通,以确认会议的预约。问题是我似乎无法将表单的响应发送到我在函数中输入的google日历ID 有人能解释一下代码出了什么问题,或者引导我朝着正确的方向解决这个问题吗 代码如下:Javascript 将google表单响应发送到google日历,javascript,google-calendar-api,Javascript,Google Calendar Api,我最近开始了一个项目,允许不同人群之间进行沟通,以确认会议的预约。问题是我似乎无法将表单的响应发送到我在函数中输入的google日历ID 有人能解释一下代码出了什么问题,或者引导我朝着正确的方向解决这个问题吗 代码如下: //Function records responses and sends them to a google calendar. function onFormSubmit(e) { var form = FormApp.getActiveForm(); // o
//Function records responses and sends them to a google calendar.
function onFormSubmit(e) {
var form = FormApp.getActiveForm(); // opens active form
var usarResponses = form.getResponses(); // collects responses
//Loop creates an array for responses
for(var i = 0; i < usarResponses.length; i++){
var usarResponse = usarResponses[i];
}
//responses are put into variables.
var name = usarResponses[0];
var appointmentName = usarResponses[1];
var appointmentDate = usarResponses[2];
var uDescription = usarResponses[3];
var cal = CalendarApp.getCalendarById('kq14it8fl42i560gl6ueeo4qu8@group.calendar.google.com').createEvent(appointmentName, new Date(appointmentDate), new Date('8:00:00 UTC') , {description: uDescription});
}
//函数记录响应并将其发送到google日历。
函数onFormSubmit(e){
var form=FormApp.getActiveForm();//打开活动窗体
var usarResponses=form.getResponses();//收集响应
//循环为响应创建一个数组
对于(变量i=0;i
这是一个棘手的问题。以下是对我有效的方法:
function createEvent() {
var form = FormApp.getActiveForm();
var cal = CalendarApp.getDefaultCalendar();
var responses = form.getResponses();
var len = responses.length;
var last = len – 1;
var items = responses[last].getItemResponses();
var email = responses[last].getRespondentEmail();
var name = items[0].getResponse();
var bring = items[1].getResponse();
var date = items[2].getResponse();
Logger.log(date);
var replace = date.replace(/-/g,”/”);
Logger.log(replace);
var start = new Date(replace);
Logger.log(‘start ‘+start);
//Logger.log(newStart.getHours());
var endHours = 2+0+start.getHours();//2 hour event
//Logger.log(start.getDay());
var day = start.getDate();
var minutes = start.getMinutes();
var year = start.getFullYear();
var month = start.getMonth();
var hours = start.getHours();
var d = new Date(year, month, day, endHours, minutes);
Logger.log(d);
var event = cal.createEvent(‘Class Party ‘+name+’ brings ‘+bring, start, d)
.addGuest(email)
.setDescription(name+’ you will be bringing ‘+bring+’ to the party.’);
GmailApp.sendEmail(email, name+’ a Google Calendar invite has been created for you’, name+’ You filled out the Google Form for the date of ‘+start+’. Check your Google Calendar to confirm that you received the invite.\n’);
}
这是一个棘手的问题。以下是对我有效的方法:
function createEvent() {
var form = FormApp.getActiveForm();
var cal = CalendarApp.getDefaultCalendar();
var responses = form.getResponses();
var len = responses.length;
var last = len – 1;
var items = responses[last].getItemResponses();
var email = responses[last].getRespondentEmail();
var name = items[0].getResponse();
var bring = items[1].getResponse();
var date = items[2].getResponse();
Logger.log(date);
var replace = date.replace(/-/g,”/”);
Logger.log(replace);
var start = new Date(replace);
Logger.log(‘start ‘+start);
//Logger.log(newStart.getHours());
var endHours = 2+0+start.getHours();//2 hour event
//Logger.log(start.getDay());
var day = start.getDate();
var minutes = start.getMinutes();
var year = start.getFullYear();
var month = start.getMonth();
var hours = start.getHours();
var d = new Date(year, month, day, endHours, minutes);
Logger.log(d);
var event = cal.createEvent(‘Class Party ‘+name+’ brings ‘+bring, start, d)
.addGuest(email)
.setDescription(name+’ you will be bringing ‘+bring+’ to the party.’);
GmailApp.sendEmail(email, name+’ a Google Calendar invite has been created for you’, name+’ You filled out the Google Form for the date of ‘+start+’. Check your Google Calendar to confirm that you received the invite.\n’);
}