پاسخ به یک مورد سوال در یک فرم. پاسخهای آیتمها را میتوان از FormResponse
دریافت کرد و از هر Item
که از پاسخدهنده میخواهد به سؤالی پاسخ دهد، ایجاد میشود.
// Open a form by ID and log the responses to each question. var form = FormApp.openById('1234567890abcdefghijklmnopqrstuvwxyz'); var formResponses = form.getResponses(); for (var i = 0; i < formResponses.length; i++) { var formResponse = formResponses[i]; var itemResponses = formResponse.getItemResponses(); for (var j = 0; j < itemResponses.length; j++) { var 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()
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)
نمره پاسخ ارسالی پاسخ دهنده را تعیین می کند. یک مقدار صفر امتیاز موجود را پاک می کند.
این روش تا زمانی که Form.submitGrades(responses)
با FormResponses به روز شده فراخوانی نشود، در واقع امتیاز را در Forms ذخیره نمی کند.
// For a multiple choice question with options: "Always true", "Sometimes true", and "Never", // award half credit for responses that answered "Sometimes true". var formResponses = FormApp.getActiveForm().getResponses(); // Go through each form response for (var i = 0; i < formResponses.length; i++) { var response = formResponses[i]; var items = FormApp.getActiveForm().getItems(); // Assume it's the first item var item = items[0]; var itemResponse = response.getGradableResponseForItem(item); // Give half credit for "Sometimes true". if (itemResponse != null && itemResponse.getResponse() == 'Sometimes true') { var points = item.asMultipleChoiceItem().getPoints(); itemResponse.setScore(points * .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