Class ItemResponse

ItemResponse

表單中單一問題項目的回覆。您可以透過 FormResponse 存取項目回應,也可以透過任何要求受訪者回答問題的 Item 建立回應。

// Open a form by ID and log the responses to each question. const form = FormApp.openById('1234567890abcdefghijklmnopqrstuvwxyz'); const formResponses = form.getResponses(); for (let i = 0; i < formResponses.length; i++) {   const formResponse = formResponses[i];   const itemResponses = formResponse.getItemResponses();   for (let j = 0; j < itemResponses.length; j++) {     const 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:問題項目的答案 StringString[]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)

設定應向受訪者顯示的意見回饋 (針對他們提交的答案)。

除非使用更新版 FormResponse 呼叫 Form.submitGrades(responses),否則這個方法不會實際儲存表單中的意見回饋。如需範例,請參閱 setScore()

參數

名稱類型說明
feedbackObject

回攻員

ItemResponse - 用於鏈結的 ItemResponse

授權

使用這個方法的腳本需要具備下列一或多個範圍的授權:

  • https://www.googleapis.com/auth/forms.currentonly
  • https://www.googleapis.com/auth/forms

setScore(score)

為作答者提交的答案設定分數。空值會清除現有分數。

除非使用更新版 FormResponse 呼叫 Form.submitGrades(responses),否則這個方法不會實際儲存分數。

// For a multiple choice question with options: "Always true", "Sometimes true", // and "Never", award half credit for responses that answered "Sometimes true". const formResponses = FormApp.getActiveForm().getResponses(); // Go through each form response for (let i = 0; i < formResponses.length; i++) {   const response = formResponses[i];   const items = FormApp.getActiveForm().getItems();   // Assume it's the first item   const item = items[0];   const itemResponse = response.getGradableResponseForItem(item);   // Give half credit for "Sometimes true".   if (itemResponse != null && itemResponse.getResponse() === 'Sometimes true') {     const points = item.asMultipleChoiceItem().getPoints();     itemResponse.setScore(points * 0.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);

參數

名稱類型說明
scoreObject

回攻員

ItemResponse - 用於鏈結的 ItemResponse

授權

使用這個方法的腳本需要具備下列一或多個範圍的授權:

  • https://www.googleapis.com/auth/forms.currentonly
  • https://www.googleapis.com/auth/forms