پاسخ به یک آیتم سوال در یک فرم. پاسخهای آیتم را میتوان از 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(), ); } }
روشها
| روش | نوع بازگشتی | شرح مختصر |
|---|---|---|
get Feedback() | Object | بازخوردی را که برای پاسخ ارسالی پاسخدهنده داده شده است، دریافت میکند. |
get Item() | Item | آیتم سوالی را که این پاسخ به آن پاسخ میدهد، دریافت میکند. |
get Response() | Object | پاسخی را که پاسخگو ارائه داده است، دریافت میکند. |
get Score() | Object | امتیاز پاسخ ارسالی پاسخدهنده را دریافت میکند. |
set Feedback(feedback) | Item Response | بازخوردی را که باید برای پاسخ ارسالی پاسخدهنده نمایش داده شود، تنظیم میکند. |
set Score(score) | Item Response | امتیاز پاسخ ارسالی پاسخدهنده را تعیین میکند. |
مستندات دقیق
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)
بازخوردی را که باید برای پاسخ ارسالی پاسخدهنده نمایش داده شود، تنظیم میکند.
این متد در واقع بازخورد را در Forms ذخیره نمیکند تا زمانی که Form.submitGrades(responses) با FormResponses بهروزرسانیشده فراخوانی شود. برای مثال به setScore() مراجعه کنید.
پارامترها
| نام | نوع | توضیحات |
|---|---|---|
feedback | Object |
بازگشت
ItemResponse - یک ItemResponse برای زنجیرهسازی
مجوز
اسکریپتهایی که از این روش استفاده میکنند، نیاز به مجوز با یک یا چند مورد از حوزههای زیر دارند:
-
https://www.googleapis.com/auth/forms.currentonly -
https://www.googleapis.com/auth/forms
setScore(score)
امتیاز پاسخ ارسالی پاسخدهنده را تعیین میکند. مقدار null امتیاز موجود را پاک میکند.
این متد در واقع نمره را در 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". 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 |
بازگشت
ItemResponse - یک ItemResponse برای زنجیرهسازی
مجوز
اسکریپتهایی که از این روش استفاده میکنند، نیاز به مجوز با یک یا چند مورد از حوزههای زیر دارند:
-
https://www.googleapis.com/auth/forms.currentonly -
https://www.googleapis.com/auth/forms