Class ItemResponse

ItemResponse

การตอบกลับรายการคําถาม 1 รายการในแบบฟอร์ม คุณสามารถเข้าถึงคำตอบของรายการได้จาก 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()

รับความคิดเห็นที่มีต่อคำตอบที่ส่งของผู้ตอบ

รีเทิร์น

ObjectQuizFeedback สำหรับรายการคำถาม

การให้สิทธิ์

สคริปต์ที่ใช้วิธีการนี้ต้องได้รับอนุญาตด้วยขอบเขตต่อไปนี้อย่างน้อย 1 รายการ

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

getItem()

รับรายการคําถามที่คำตอบนี้ตอบ

รีเทิร์น

Item — รายการคำถามที่คำตอบนี้ตอบ

การให้สิทธิ์

สคริปต์ที่ใช้วิธีการนี้ต้องได้รับอนุญาตด้วยขอบเขตต่อไปนี้อย่างน้อย 1 รายการ

  • 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 ในตารางคำถามแบบช่องทำเครื่องหมาย หากผู้ตอบไม่ตอบคําถามในตาราง ระบบจะแสดงคําตอบเป็น ''

รีเทิร์น

ObjectString หรือ String[] หรือ String[][] ของคำตอบสำหรับคำถาม รายการ

การให้สิทธิ์

สคริปต์ที่ใช้วิธีการนี้ต้องได้รับอนุญาตด้วยขอบเขตต่อไปนี้อย่างน้อย 1 รายการ

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

getScore()

รับคะแนนสําหรับคําตอบที่ส่งของผู้ตอบ

รีเทิร์น

ObjectDouble ที่แสดงคะแนนสำหรับรายการคำถาม

การให้สิทธิ์

สคริปต์ที่ใช้วิธีการนี้ต้องได้รับอนุญาตด้วยขอบเขตต่อไปนี้อย่างน้อย 1 รายการ

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

setFeedback(feedback)

ตั้งค่าความคิดเห็นที่ควรแสดงสําหรับคําตอบที่ส่งของผู้ตอบ

วิธีการนี้ไม่ได้บันทึกความคิดเห็นในแบบฟอร์มจนกว่าจะมีการเรียก Form.submitGrades(responses) ด้วย FormResponses ที่อัปเดตแล้ว ดูตัวอย่างได้ที่ setScore()

พารามิเตอร์

ชื่อประเภทคำอธิบาย
feedbackObject

รีเทิร์น

ItemResponseItemResponse สำหรับเชน

การให้สิทธิ์

สคริปต์ที่ใช้วิธีการนี้ต้องได้รับอนุญาตด้วยขอบเขตต่อไปนี้อย่างน้อย 1 รายการ

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

setScore(score)

กำหนดคะแนนสำหรับคำตอบที่ส่งของผู้ตอบ ค่า Null จะล้างคะแนนที่มีอยู่

วิธีนี้ไม่ได้บันทึกคะแนนในแบบฟอร์มจนกว่าจะมีการเรียกใช้ Form.submitGrades(responses) ด้วย FormResponse ที่อัปเดตแล้ว

// 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

รีเทิร์น

ItemResponseItemResponse สำหรับเชน

การให้สิทธิ์

สคริปต์ที่ใช้วิธีการนี้ต้องได้รับอนุญาตด้วยขอบเขตต่อไปนี้อย่างน้อย 1 รายการ

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