Nội dung phản hồi cho toàn bộ biểu mẫu. Bạn có thể sử dụng Form
theo 3 cách: để truy cập vào các câu trả lời do người trả lời gửi (xem get
), để gửi câu trả lời cho biểu mẫu theo phương thức lập trình (xem with
và submit()
) và để tạo URL cho biểu mẫu giúp điền sẵn các trường bằng các câu trả lời đã cung cấp. Bạn có thể tạo hoặc truy cập vào Form
từ Form
.
// 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(), ); } }
Phương thức
Phương thức | Loại dữ liệu trả về | Mô tả ngắn |
---|---|---|
get | String | Tạo một URL có thể dùng để chỉnh sửa câu trả lời đã gửi. |
get | Item | Lấy tất cả câu trả lời về mục có trong một câu trả lời biểu mẫu, theo thứ tự các mục xuất hiện trong biểu mẫu. |
get | Item | Lấy phản hồi về mặt hàng có trong phản hồi biểu mẫu cho một mặt hàng nhất định. |
get | String | Lấy mã nhận dạng của phản hồi biểu mẫu. |
get | Item | Lấy tất cả câu trả lời về mục có trong một câu trả lời biểu mẫu, theo thứ tự các mục xuất hiện trong biểu mẫu. |
get | String | Lấy địa chỉ email của người đã gửi câu trả lời, nếu bạn bật chế độ cài đặt Form.setCollectEmail(collect) . |
get | Item | Lấy câu trả lời của mục có trong phản hồi biểu mẫu này cho một mục nhất định. |
get | Date | Lấy dấu thời gian của nội dung phản hồi gửi qua biểu mẫu. |
submit() | Form | Gửi phản hồi. |
to | String | Tạo một URL cho biểu mẫu có các câu trả lời được điền sẵn dựa trên các câu trả lời trong phản hồi biểu mẫu này. |
with | Form | Thêm điểm của câu trả lời cho mục đã cho vào câu trả lời trên biểu mẫu. |
with | Form | Thêm phản hồi mục đã cho vào phản hồi biểu mẫu. |
Tài liệu chi tiết
get Edit Response Url()
Tạo một URL có thể dùng để chỉnh sửa câu trả lời đã gửi. Nếu bạn tắt chế độ cài đặt Form.setAllowResponseEdits(enabled)
, thì đường liên kết sẽ dẫn đến một trang giải thích rằng tính năng chỉnh sửa nội dung trả lời biểu mẫu đã bị tắt. Bất kỳ ai truy cập vào đường liên kết đều có thể chỉnh sửa phản hồi, mặc dù họ cần có tài khoản có quyền truy cập vào biểu mẫu nếu bạn bật chế độ cài đặt
. Nếu bạn bật chế độ cài đặt Form.setRequireLogin(requireLogin)Form.setCollectEmail(collect)
, thì biểu mẫu sẽ ghi lại địa chỉ email của người dùng đã chỉnh sửa câu trả lời thay vì địa chỉ email của người trả lời ban đầu.
Đối với phản hồi biểu mẫu mà tập lệnh đã tạo nhưng chưa gửi, phương thức này sẽ trả về null
.
// Opens the Forms file by its ID. // If you created your script from within a Google Forms file, you can // use FormApp.getActiveForm() instead. // TODO(developer): Replace the ID with your own. const form = FormApp.openById('abc123456'); // Gets the first form response. const formResponse = form.getResponses()[0]; // Gets the edit URL for the first form response and logs it to the console. const editUrl = formResponse.getEditResponseUrl(); console.log(editUrl);
Cầu thủ trả bóng
String
– URL để thay đổi câu trả lời đã gửi.
Ủy quyền
Các tập lệnh sử dụng phương thức này yêu cầu được uỷ quyền với một hoặc nhiều phạm vi sau:
-
https://www.googleapis.com/auth/forms.currentonly
-
https://www.googleapis.com/auth/forms
get Gradable Item Responses()
Lấy tất cả câu trả lời về mục có trong một câu trả lời biểu mẫu, theo thứ tự các mục xuất hiện trong biểu mẫu. Phương thức này hoạt động tương tự như get
, nhưng để cho phép chấm điểm một câu trả lời bị thiếu, phương thức này vẫn trả về Item
nếu Item
tương ứng có thể được chấm điểm (tức là có giá trị điểm), ngay cả khi không có câu trả lời thực tế. Tuy nhiên, nếu Item
không thể đánh giá, thì phương thức này sẽ loại trừ mục đó khỏi mảng được trả về.
// Opens the Forms file by its ID. // If you created your script from within a Google Forms file, you can // use FormApp.getActiveForm() instead. // TODO(developer): Replace the ID with your own. const form = FormApp.openById('abc123456'); // Gets an array of the form's responses. const formResponses = form.getResponses(); // Gets the item responses contained in each form response. for (const formResponse of formResponses) { const gradableItemsResponses = formResponse.getGradableItemResponses(); // Logs the title and score for each item response to the console. for (const gradableItemsResponse of gradableItemsResponses) { console.log(`${gradableItemsResponse.getItem().getTitle()} score ${gradableItemsResponse.getScore()}`); } }
Cầu thủ trả bóng
Item
– Một mảng các câu trả lời cho mọi mục câu hỏi trong biểu mẫu mà người trả lời có thể nhận được điểm.
Ủy quyền
Các tập lệnh sử dụng phương thức này yêu cầu được uỷ quyền với một hoặc nhiều phạm vi sau:
-
https://www.googleapis.com/auth/forms.currentonly
-
https://www.googleapis.com/auth/forms
get Gradable Response For Item(item)
Lấy phản hồi về mặt hàng có trong phản hồi biểu mẫu cho một mặt hàng nhất định. Phương thức này hoạt động tương tự như get
, nhưng để cho phép chấm điểm một câu trả lời bị thiếu, phương thức này vẫn trả về Item
nếu Item
tương ứng có thể được chấm điểm (tức là có giá trị điểm), ngay cả khi không có câu trả lời thực tế. Tuy nhiên, nếu Item
không thể đánh giá, thì phương thức này sẽ trả về null
.
// Opens the Forms file by its ID. // If you created your script from within a Google Forms file, you can // use FormApp.getActiveForm() instead. // TODO(developer): Replace the ID with your own. const form = FormApp.openById('abc123456'); // Gets an array of the form's responses. const formResponses = form.getResponses(); // Gets the item responses contained in a form response. for (const formResponse of formResponses) { const formItemResponses = formResponse.getGradableItemResponses(); // Logs the title and score for responses to the first item of the form. const itemResponse = formResponse.getGradableResponseForItem( formItemResponses[0].getItem(), ); console.log( `${itemResponse.getItem().getTitle()} score ${itemResponse.getScore()}`, ); }
Tham số
Tên | Loại | Mô tả |
---|---|---|
item | Item |
Cầu thủ trả bóng
Item
– Phản hồi cho một mục nhất định hoặc null
nếu không có mục nào và mục đó chưa được chấm điểm.
get Id()
Lấy mã nhận dạng của phản hồi biểu mẫu. Phương thức này trả về null
nếu bạn chưa gửi phản hồi biểu mẫu.
// Opens the Forms file by its ID. // If you created your script from within a Google Forms file, you can // use FormApp.getActiveForm() instead. // TODO(developer): Replace the ID with your own. const form = FormApp.openById('abc123456'); // Gets an array of the form's responses. const formResponses = form.getResponses(); // Loops through the form responses and logs the ID for each form response to // the console. for (const formResponse of formResponses) { console.log(`Response ID: ${formResponse.getId()}`); }
Cầu thủ trả bóng
String
– Mã nhận dạng của câu trả lời trong biểu mẫu hoặc null
nếu câu trả lời trong biểu mẫu chưa được gửi.
Ủy quyền
Các tập lệnh sử dụng phương thức này yêu cầu được uỷ quyền với một hoặc nhiều phạm vi sau:
-
https://www.googleapis.com/auth/forms.currentonly
-
https://www.googleapis.com/auth/forms
get Item Responses()
Lấy tất cả câu trả lời về mục có trong một câu trả lời biểu mẫu, theo thứ tự các mục xuất hiện trong biểu mẫu. Nếu phản hồi biểu mẫu không chứa phản hồi cho một Text
, Date
, Time
hoặc Paragraph
nhất định, thì Item
được trả về cho mục đó sẽ có phản hồi là một chuỗi trống. Nếu phản hồi biểu mẫu bỏ qua phản hồi cho bất kỳ loại mục nào khác, thì phương thức này sẽ loại trừ mục đó khỏi mảng được trả về.
// Opens the Forms file by its ID. // If you created your script from within a Google Forms file, you can // use FormApp.getActiveForm() instead. // TODO(developer): Replace the ID with your own. const form = FormApp.openById('abc123456'); // Gets the responses to the form. const formResponses = form.getResponses(); // Iterates over the responses. for (const formResponse of formResponses) { // Gets the item responses from each form response. const itemResponses = formResponse.getItemResponses(); // Iterates over the item responses. for (const itemResponse of itemResponses) { // Logs the items' questions and responses to the console. console.log( `Response to the question '${itemResponse.getItem().getTitle()}' was '${itemResponse.getResponse()}'`); } }
Cầu thủ trả bóng
Item
– Một mảng các câu trả lời cho mọi mục câu hỏi trong biểu mẫu mà người trả lời đã cung cấp câu trả lời.
Ủy quyền
Các tập lệnh sử dụng phương thức này yêu cầu được uỷ quyền với một hoặc nhiều phạm vi sau:
-
https://www.googleapis.com/auth/forms.currentonly
-
https://www.googleapis.com/auth/forms
get Respondent Email()
Lấy địa chỉ email của người đã gửi câu trả lời, nếu bạn bật chế độ cài đặt Form.setCollectEmail(collect)
.
Đối với phản hồi biểu mẫu mà tập lệnh đã tạo nhưng chưa gửi, phương thức này sẽ trả về null
.
// Opens the Forms file by its ID. // If you created your script from within a Google Forms file, you can // use FormApp.getActiveForm() instead. // TODO(developer): Replace the ID with your own. const form = FormApp.openById('abc123456'); // Gets an array of the form's responses. const formResponses = form.getResponses(); // Loops through the responses and logs each respondent's email to the console. // To collect respondent emails, ensure that Form.setCollectEmail(collect) is // set to true. for (const formResponse of formResponses) { console.log(`Respondent Email: ${formResponse.getRespondentEmail()}`); }
Cầu thủ trả bóng
String
– Địa chỉ email của người đã gửi phản hồi này (nếu có) hoặc null
nếu tập lệnh đã tạo phản hồi này nhưng chưa gửi.
Ủy quyền
Các tập lệnh sử dụng phương thức này yêu cầu được uỷ quyền với một hoặc nhiều phạm vi sau:
-
https://www.googleapis.com/auth/forms.currentonly
-
https://www.googleapis.com/auth/forms
get Response For Item(item)
Lấy câu trả lời của mục có trong phản hồi biểu mẫu này cho một mục nhất định.
// Opens the Forms file by its ID. // If you created your script from within a Google Forms file, you can // use FormApp.getActiveForm() instead. // TODO(developer): Replace the ID with your own. const form = FormApp.openById('abc123456'); // Gets the first item on the form. const item = form.getItems()[0]; // Gets an array of the form's responses. const formResponses = form.getResponses(); // Loops through the responses and logs each response to the first item to the // console. for (const formResponse of formResponses) { const itemResponse = formResponse.getResponseForItem(item); console.log(itemResponse.getResponse()); }
Tham số
Tên | Loại | Mô tả |
---|---|---|
item | Item |
Cầu thủ trả bóng
Item
– Phản hồi cho một mục nhất định hoặc null
nếu không có mục nào.
get Timestamp()
Lấy dấu thời gian của nội dung phản hồi gửi qua biểu mẫu.
Đối với phản hồi biểu mẫu mà tập lệnh đã tạo nhưng chưa gửi, phương thức này sẽ trả về null
.
// Opens the Forms file by its ID. // If you created your script from within a Google Forms file, you can // use FormApp.getActiveForm() instead. // TODO(developer): Replace the ID with your own. const form = FormApp.openById('abc123456'); // Gets an array of the form's responses. const formResponses = form.getResponses(); // Loops through the responses and logs the timestamp of each response to the // console. for (const formResponse of formResponses) { console.log(`Timestamp: ${formResponse.getTimestamp()}`); }
Cầu thủ trả bóng
Date
– Dấu thời gian tại thời điểm gửi phản hồi này hoặc null
nếu tập lệnh đã tạo phản hồi này nhưng chưa gửi.
Ủy quyền
Các tập lệnh sử dụng phương thức này yêu cầu được uỷ quyền với một hoặc nhiều phạm vi sau:
-
https://www.googleapis.com/auth/forms.currentonly
-
https://www.googleapis.com/auth/forms
submit()
Gửi phản hồi. Gửi một ngoại lệ tập lệnh nếu phản hồi đã được gửi.
// Opens the Forms file by its ID. // If you created your script from within a Google Forms file, you can // use FormApp.getActiveForm() instead. // TODO(developer): Replace the ID with your own. const form = FormApp.openById('abc123456'); // Creates an empty response for the form. const formResponse = form.createResponse(); // Submits an empty response. formResponse.submit();
Cầu thủ trả bóng
Form
– Một câu trả lời mới tạo được lưu vào kho lưu trữ câu trả lời của biểu mẫu.
Ủy quyền
Các tập lệnh sử dụng phương thức này yêu cầu được uỷ quyền với một hoặc nhiều phạm vi sau:
-
https://www.googleapis.com/auth/forms.currentonly
-
https://www.googleapis.com/auth/forms
to Prefilled Url()
Tạo một URL cho biểu mẫu có các câu trả lời được điền sẵn dựa trên các câu trả lời trong phản hồi biểu mẫu này.
// Opens the Forms file by its ID. // If you created your script from within a Google Forms file, you can // use FormApp.getActiveForm() instead. // TODO(developer): Replace the ID with your own. const form = FormApp.openById('abc123456'); // Gets the first form response. const formResponse = form.getResponses()[0]; // Generates and logs the URL of a pre-filled form response based on the answers // of the first form response. const prefilledUrl = formResponse.toPrefilledUrl(); console.log(prefilledUrl);
Cầu thủ trả bóng
String
– URL của một biểu mẫu có câu trả lời được điền sẵn.
Ủy quyền
Các tập lệnh sử dụng phương thức này yêu cầu được uỷ quyền với một hoặc nhiều phạm vi sau:
-
https://www.googleapis.com/auth/forms.currentonly
-
https://www.googleapis.com/auth/forms
with Item Grade(gradedResponse)
Thêm điểm của câu trả lời cho mục đã cho vào câu trả lời trên biểu mẫu. Phương thức này chỉ áp dụng cho các câu trả lời trên biểu mẫu đã được gửi và chỉ ảnh hưởng đến điểm đã lưu trữ sau khi các câu trả lời đó được gửi. Phương thức này cũng chỉ cập nhật điểm của câu trả lời cho mục; phương thức này không ảnh hưởng đến câu trả lời thực tế (vì câu trả lời đã được gửi). Nếu phương thức này được gọi nhiều lần cho cùng một mục, thì chỉ điểm số cuối cùng mới được giữ lại. Nếu ItemResponse không chứa điểm, phương thức này sẽ xoá điểm cho mục đó.
// Programmatically award partial credit for a given response const form = FormApp.openById('1234567890abcdefghijklmnopqrstuvwxyz'); const formResponses = form.getResponses(); const formItems = form.getItems(); for (const formResponse of formResponses) { for (const item of formItems) { const points = item.asMultipleChoiceItem().getPoints(); const itemResponse = formResponse.getGradableResponseForItem(item); Logger.log('Award half credit for answers containing the word "Kennedy"'); const answer = itemResponse.getResponse(); if (answer?.includes('Kennedy')) { itemResponse.setScore(points / 2); formResponse.withItemGrade(itemResponse); } } } form.submitGrades(formResponses);
Tham số
Tên | Loại | Mô tả |
---|---|---|
graded | Item |
Cầu thủ trả bóng
Form
– Form
này, để tạo chuỗi
Ủy quyền
Các tập lệnh sử dụng phương thức này yêu cầu được uỷ quyền với một hoặc nhiều phạm vi sau:
-
https://www.googleapis.com/auth/forms.currentonly
-
https://www.googleapis.com/auth/forms
with Item Response(response)
Thêm phản hồi mục đã cho vào phản hồi biểu mẫu. Phương thức này chỉ áp dụng cho các phản hồi biểu mẫu mà tập lệnh đã tạo nhưng chưa gửi; phương thức này không thể ảnh hưởng đến các phản hồi đã lưu trữ. Nếu phương thức này được gọi nhiều lần cho cùng một mục, thì hệ thống chỉ giữ lại phản hồi mục cuối cùng.
// Opens the Forms file by its ID. // If you created your script from within a Google Forms file, you can // use FormApp.getActiveForm() instead. // TODO(developer): Replace the ID with your own. const form = FormApp.openById('abc123456'); // Creates a response for the form. const formResponse = form.createResponse(); // Appends a checkbox item to the form. const item = form.addCheckboxItem(); // Sets the title of the item to 'Which items are ice cream flavors?' item.setTitle('Which items are ice cream flavors?'); // Sets choices for the item. item.setChoices([ item.createChoice('Vanilla'), item.createChoice('Strawberry'), item.createChoice('Brick'), ]); // Creates a response for the item. const response = item.createResponse(['Vanilla', 'Strawberry']); // Adds the item response to the form response. formResponse.withItemResponse(response); // Submits the form response. formResponse.submit();
Tham số
Tên | Loại | Mô tả |
---|---|---|
response | Item |
Cầu thủ trả bóng
Form
— Form
này, để tạo chuỗi.
Ủy quyền
Các tập lệnh sử dụng phương thức này yêu cầu được uỷ quyền với một hoặc nhiều phạm vi sau:
-
https://www.googleapis.com/auth/forms.currentonly
-
https://www.googleapis.com/auth/forms