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()

回答者が送信した回答に対して提供されたフィードバックを取得します。

戻る

Object - 質問項目の QuizFeedback

承認

このメソッドを使用するスクリプトには、次の 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 の質問に対応しています。回答者がグリッド内の質問に回答しなかった場合、その回答は '' として返されます。

戻る

Object - 質問項目の回答の StringString[]String[][]

承認

このメソッドを使用するスクリプトには、次の 1 つ以上のスコープによる承認が必要です。

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

getScore()

回答者が送信した回答のスコアを取得します。

戻る

Object - 質問項目のスコアを表す Double

承認

このメソッドを使用するスクリプトには、次の 1 つ以上のスコープによる承認が必要です。

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

setFeedback(feedback)

回答者が送信した回答に対して表示するフィードバックを設定します。

このメソッドは、更新された FormResponses で Form.submitGrades(responses) が呼び出されるまで、フォームにフィードバックを実際に保存しません。例については、setScore() をご覧ください。

パラメータ

名前タイプ説明
feedbackObject

戻る

ItemResponse - チェーン用の ItemResponse

承認

このメソッドを使用するスクリプトには、次の 1 つ以上のスコープによる承認が必要です。

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

setScore(score)

回答者が送信した回答のスコアを設定します。null 値を指定すると、既存のスコアがクリアされます。

このメソッドは、更新された FormResponses で 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

承認

このメソッドを使用するスクリプトには、次の 1 つ以上のスコープによる承認が必要です。

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