Ответ на один вопрос в форме. Доступ к ответам на элементы можно получить из FormResponse
, и они могут быть созданы из любого Item
, который просит респондента ответить на вопрос.
// 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()); } }
Методы
Метод | Тип возврата | Краткое описание |
---|---|---|
getFeedback() | Object | Получает отзыв, полученный по отправленному ответу респондента. |
getItem() | Item | Получает элемент вопроса, на который отвечает этот ответ. |
getResponse() | Object | Получает ответ, отправленный респондентом. |
getScore() | Object | Получает оценку за отправленный ответ респондента. |
setFeedback(feedback) | ItemResponse | Устанавливает отзыв, который должен отображаться для отправленного ответа респондента. |
setScore(score) | ItemResponse | Устанавливает оценку за отправленный ответ респондента. |
Подробная документация
getFeedback()
Получает отзыв, полученный по отправленному ответу респондента.
Возвращаться
Object
— QuizFeedback
для элемента вопроса.
Авторизация
Сценарии, использующие этот метод, требуют авторизации с одной или несколькими из следующих областей :
-
https://www.googleapis.com/auth/forms.currentonly
-
https://www.googleapis.com/auth/forms
getItem()
Получает элемент вопроса, на который отвечает этот ответ.
Возвращаться
Item
— элемент вопроса, на который отвечает этот ответ.
Авторизация
Сценарии, использующие этот метод, требуют авторизации с одной или несколькими из следующих областей :
-
https://www.googleapis.com/auth/forms.currentonly
-
https://www.googleapis.com/auth/forms
getResponse()
Получает ответ, отправленный респондентом. Для большинства типов вопросов возвращается String
.
Для вопросов CheckboxItem
возвращается массив String[]
содержащий варианты ответа респондента. Порядок строк в массиве может меняться.
Для вопросов GridItem
возвращается массив String[]
, в котором ответ с индексом n
соответствует вопросу в строке n + 1
в сетке. Если респондент не ответил на вопрос в таблице, этот ответ возвращается как ''
.
Для вопросов CheckboxGridItem
возвращается массив String[][]
в котором ответы в строке с индексом n
соответствуют вопросу в строке n + 1
в сетке флажков. Если респондент не ответил на вопрос в таблице, этот ответ возвращается как ''
.
Возвращаться
Object
— String
или String[]
или String[][]
ответов на вопрос.
Авторизация
Сценарии, использующие этот метод, требуют авторизации с одной или несколькими из следующих областей :
-
https://www.googleapis.com/auth/forms.currentonly
-
https://www.googleapis.com/auth/forms
getScore()
Получает оценку за отправленный ответ респондента.
Возвращаться
Object
— значение Double
, представляющее оценку за элемент вопроса.
Авторизация
Сценарии, использующие этот метод, требуют авторизации с одной или несколькими из следующих областей :
-
https://www.googleapis.com/auth/forms.currentonly
-
https://www.googleapis.com/auth/forms
setFeedback(feedback)
Устанавливает отзыв, который должен отображаться для отправленного ответа респондента.
Этот метод фактически не сохраняет отзывы в формах до тех пор, пока не будет вызван Form.submitGrades(responses)
с обновленными ответами FormResponse. См. пример setScore()
.
Параметры
Имя | Тип | Описание |
---|---|---|
feedback | Object |
Возвращаться
ItemResponse
— ItemResponse
для цепочки
Авторизация
Сценарии, использующие этот метод, требуют авторизации с одной или несколькими из следующих областей :
-
https://www.googleapis.com/auth/forms.currentonly
-
https://www.googleapis.com/auth/forms
setScore(score)
Устанавливает оценку за отправленный ответ респондента. Нулевое значение очистит существующую оценку.
Этот метод фактически не сохраняет оценку в Forms до тех пор, пока не будет вызван Form.submitGrades(responses)
с обновленными FormResponses.
// For a multiple choice question with options: "Always true", "Sometimes true", and "Never", // award half credit for responses that answered "Sometimes true". var formResponses = FormApp.getActiveForm().getResponses(); // Go through each form response for (var i = 0; i < formResponses.length; i++) { var response = formResponses[i]; var items = FormApp.getActiveForm().getItems(); // Assume it's the first item var item = items[0]; var itemResponse = response.getGradableResponseForItem(item); // Give half credit for "Sometimes true". if (itemResponse != null && itemResponse.getResponse() == 'Sometimes true') { var points = item.asMultipleChoiceItem().getPoints(); itemResponse.setScore(points * .5); // This saves the grade, but does not submit to Forms yet. response.withItemGrade(itemResponse); } } // Grades are actually submitted to Forms here. FormApp.getActiveForm().submitGrades(formResponses);
Параметры
Имя | Тип | Описание |
---|---|---|
score | Object |
Возвращаться
ItemResponse
— ItemResponse
для цепочки
Авторизация
Сценарии, использующие этот метод, требуют авторизации с одной или несколькими из следующих областей :
-
https://www.googleapis.com/auth/forms.currentonly
-
https://www.googleapis.com/auth/forms