回答
編輯:多虧跟進評論的附加信息,這個問題已經得到澄清,並歸結爲:「作爲一個用戶進行選擇在谷歌的形式,它可以自定義選項這種形式的其他問題?「
答:不可以。請參閱Dynamically edit multiple choice options in live Google Form using Apps Script。
原始回答 - 這解釋了在編輯這些選項的來源(電子表格)時,如何更改表單中顯示的選項。
如果您的數據位於Google Spreadhsheet中,源電子表格中的觸發器將能夠響應名稱和成績列表中的更改。
onChange
觸發器是「可安裝的」,並且能夠執行簡單的操作,例如修改表單,因此在這種情況下它將是更好的選擇。
在觸發器功能中,使用FormsApp.openById()
或FormsApp.openByUrl()
,然後使用item.setChoices()
更新以前的項目選項,從電子表格中讀取值,就像創建表單時一樣。
對於獎勵標誌......而不是盲目覆蓋選項,您可以閱讀現有的選項並僅在更改時更新它們。
警告 - 在頻繁更改或長列表的工作表上,此觸發器的計算成本很高。您可能會發現您遇到了Google的處理限制。
但是,如果你看到我的要求,我沒有改變電子表格中的任何東西,我只想根據成績篩選學生姓名..所以你認爲上述解決方案可以幫助嗎? – user3082586
啊哈,謝謝你的澄清。在你的問題中使用'onChange',以及從電子表格填充選項的引用,導致我走錯了路。不,你不能改變選項列表的內容,一旦它們在瀏覽器中呈現 - 請參閱[這個答案](http://stackoverflow.com/questions/18645999/dynamically-edit-multiple-choice-options-in-現場谷歌 - 成型 - 使用 - 應用程序 - 腳本/ 18649165#18649165) – Mogsdad
據我所知,這種類型的客戶端事件在Google窗體中不存在。 Google Apps腳本的腳本機制專爲創建表單和其他文檔而設計,但不會達到客戶端功能的極限。
我建議您將表單分成多個頁面,並使用「轉到基於答案的頁面」功能來實現您所需的功能。
使用form.addPageBreakItem()
創建頁面並使用item.createChoice(value, PageBreakItem)
導航到正確的頁面。
參考文獻:
- 1. 選擇以HTML形式的動態選擇的選項
- 2. 在選擇(形式)選項
- 3. 動態HTML選擇器/選項不以表格形式發送
- 4. jQuery選擇動態命名的形式
- 5. jeditable動態選擇選項
- 6. html選擇動態選項
- 7. jqtransform動態選擇選項?
- 8. 動態創建動態選擇選項
- 9. Grails的形式選擇選項
- 10. 動態添加HTML選擇形式
- 11. laravel形式選擇動態變化值
- 12. Django + autocomplete_light動態選擇字段形式
- 13. 請選擇選項靜態到動態
- 14. 動態選擇選項單選按鈕
- 15. 形式EMPTY選擇選項PHP
- 16. jquery ajax轉換形式選擇選項
- 17. PHP +形式中選擇選項
- 18. JS中的動態選擇選項
- 19. 動態選擇選項的PHP和MySQL
- 20. ng-repeat中的動態選擇選項
- 21. 在angularJs中選擇的動態選項
- 22. SAP ABAP中的動態選擇選項
- 23. 使用Javascript - 形式選擇框語法選擇的選項
- 24. 選擇啓動形式
- 25. 自動填充文本形式值後選擇一個選項的形式
- 26. 選擇形式
- 27. 選擇形式
- 28. 如何啓用形式選項選擇基於第一選擇
- 29. 離子選擇動態選項
- 30. 動態選擇選項時,在角
你如何從Excel電子表格中的數據?您是否使用Google電子表格? – Mogsdad
是的數據來自谷歌電子表格通過谷歌應用程序腳本功能,我們寫道.. – user3082586