Get the current response onSubmit

google-apps-script

Solution

This code gives you the values for the last form response, is that what you're looking for ?

function myFunction() {
  var formResponses = FormApp.getActiveForm().getResponses();
  Logger.log(formResponses.length);
  var formResponse = formResponses[formResponses.length-1];
  var itemResponses = formResponse.getItemResponses();
  for (var j = 0; j < itemResponses.length; j++) {
    var itemResponse = itemResponses[j];
    Logger.log('Last response to the question "%s" was "%s"',
               itemResponse.getItem().getTitle(),
               itemResponse.getResponse());
  }
}

Problem

Is there any way to find out the current response of the Google Form (programmatically)? In the `onSubmit` function. Looked over their documentation but I have to provide the `respondId`. How do I find the `respondId`? A snipped code from them about this is: ``` // Open a form by ID and log the responses to each question. var form = FormApp.openById('1234567890abcdefghijklmnopqrstuvwxyz'); var formResponses = form.getResponses(); for (var i = 0; i < formResponses.length; i++) { var formResponse = formResponses[i]; var itemResponses = formResponse.getItemResponses(); for (var j = 0; j < itemResponses.length; j++) { var itemResponse = itemResponses[j]; Logger.log('Response #%s to the question "%s" was "%s"', (i + 1).toString(), itemResponse.getItem().getTitle(), itemResponse.getResponse()); } } ``` UPDATE: ``` function onSubmit(e) { /* Get values entered by filling the form */ var itemResponses = e.response.getItemResponses(); var myWantedValue = itemResponses[COLUMN_NUMBER].getResponse(); } ``` Note: By passing the e(vent) as parameter the values can be accessed by submitting the live form, NOT by the script editor!

Original source