表單中單一問題項目的回覆。您可以透過 Form
存取項目回應,也可以透過任何要求受訪者回答問題的 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(), ); } }
方法
方法 | 傳回類型 | 簡短說明 |
---|---|---|
get | Object | 取得針對受訪者提交的答案所提供的意見回饋。 |
get | Item | 取得此回覆所回答的問題項目。 |
get | Object | 取得受訪者提交的答案。 |
get | Object | 取得受訪者提交答案的分數。 |
set | Item | 設定應向受訪者顯示的意見回饋,針對他們提交的答案。 |
set | Item | 為作答者提交的答案設定分數。 |
內容詳盡的說明文件
get Feedback()
取得針對受訪者提交的答案所提供的意見回饋。
回攻員
Object
:問題項目的 Quiz
授權
使用這個方法的腳本需要具備下列一或多個範圍的授權:
-
https://www.googleapis.com/auth/forms.currentonly
-
https://www.googleapis.com/auth/forms
get Item()
get Response()
取得受訪者提交的答案。對於大多數類型的題目項目,這會傳回 String
。
對於 Checkbox
問題,這會傳回包含回應者選擇的 String[]
陣列。陣列中字串的順序可能不同。
對於 Grid
問題,這會傳回 String[]
陣列,其中索引 n
的答案會對應至格狀檢視畫面中第 n + 1
列的問題。如果受訪者未回答格狀檢視中的某個問題,系統會將該答案傳回為 ''
。
對於 Checkbox
問題,這會傳回 String[][]
陣列,其中資料列索引 n
的答案會對應至核取方塊格線中資料列 n + 1
的問題。如果受訪者未回答格狀檢視中的某個問題,系統會將該答案傳回為 ''
。
回攻員
Object
:問題項目的答案 String
、String[]
或 String[][]
授權
使用這個方法的腳本需要具備下列一或多個範圍的授權:
-
https://www.googleapis.com/auth/forms.currentonly
-
https://www.googleapis.com/auth/forms
get Score()
取得受訪者提交答案的分數。
回攻員
Object
:代表問題項目分數的 Double
授權
使用這個方法的腳本需要具備下列一或多個範圍的授權:
-
https://www.googleapis.com/auth/forms.currentonly
-
https://www.googleapis.com/auth/forms
set Feedback(feedback)
設定應向受訪者顯示的意見回饋 (針對他們提交的答案)。
除非使用更新版 FormResponse 呼叫 Form.submitGrades(responses)
,否則這個方法不會實際儲存表單中的意見回饋。如需範例,請參閱 set
。
參數
名稱 | 類型 | 說明 |
---|---|---|
feedback | Object |
回攻員
Item
- 用於鏈結的 Item
授權
使用這個方法的腳本需要具備下列一或多個範圍的授權:
-
https://www.googleapis.com/auth/forms.currentonly
-
https://www.googleapis.com/auth/forms
set Score(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);
參數
名稱 | 類型 | 說明 |
---|---|---|
score | Object |
回攻員
Item
- 用於鏈結的 Item
授權
使用這個方法的腳本需要具備下列一或多個範圍的授權:
-
https://www.googleapis.com/auth/forms.currentonly
-
https://www.googleapis.com/auth/forms