回答編集履歴
4
answer
CHANGED
@@ -6,7 +6,7 @@
|
|
6
6
|
.setGoToPage(FormApp.PageNavigationType.SUBMIT);
|
7
7
|
```
|
8
8
|
|
9
|
-
to_2 に .setGoToPage(FormApp.PageNavigationType.SUBMIT)を設定することで、「to_2の**前**のセクション」の回答欄の下部に「送信」ボタンを表示できる"可能性"があります。(必ず表示できると言っているわけではありません。後述)
|
9
|
+
to_2 に .setGoToPage(FormApp.PageNavigationType.SUBMIT)を設定することで、「to_2の**前**のセクション」であるto_1の回答欄の下部に「送信」ボタンを表示できる"可能性"があります。(必ず表示できると言っているわけではありません。後述)
|
10
10
|
|
11
11
|
たとえば手元の環境では、下記のコードで期待通りに動いています。
|
12
12
|
```js
|
3
answer
CHANGED
@@ -2,7 +2,7 @@
|
|
2
2
|
https://developers.google.com/apps-script/reference/forms/page-break-item#setgotopagenavigationtype
|
3
3
|
|
4
4
|
```
|
5
|
-
const to_2 = form.addPageBreakItem().setTitle('
|
5
|
+
const to_2 = form.addPageBreakItem().setTitle('就職について')
|
6
6
|
.setGoToPage(FormApp.PageNavigationType.SUBMIT);
|
7
7
|
```
|
8
8
|
|
2
answer
CHANGED
@@ -6,7 +6,7 @@
|
|
6
6
|
.setGoToPage(FormApp.PageNavigationType.SUBMIT);
|
7
7
|
```
|
8
8
|
|
9
|
-
to_2にsetGoToPageを
|
9
|
+
to_2 に .setGoToPage(FormApp.PageNavigationType.SUBMIT)を設定することで、「to_2の**前**のセクション」の回答欄の下部に「送信」ボタンを表示できる"可能性"があります。(必ず表示できると言っているわけではありません。後述)
|
10
10
|
|
11
11
|
たとえば手元の環境では、下記のコードで期待通りに動いています。
|
12
12
|
```js
|
@@ -46,6 +46,7 @@
|
|
46
46
|
item.createChoice('進学', to_1),
|
47
47
|
item.createChoice('就職', to_2),
|
48
48
|
]);
|
49
|
+
}
|
49
50
|
```
|
50
51
|
しかしながら、**オブジェクトの生成・挿入順序によっては思い通りに行かない場合もある**ようです。
|
51
52
|
質問者さんの手持ちのコードでもうまくいくかは(コードが一部しか記載されていないため)わかりかねます。
|
1
修正・追記
answer
CHANGED
@@ -1,6 +1,64 @@
|
|
1
|
-
セクションに対し、setGoToPage()メソッドで送信を設定してみてはいかがでしょうか。
|
1
|
+
すでに試されているかもしれませんが、送信を表示させたい**直後の**セクションに対し、setGoToPage()メソッドで送信を設定してみてはいかがでしょうか。
|
2
2
|
https://developers.google.com/apps-script/reference/forms/page-break-item#setgotopagenavigationtype
|
3
|
+
|
3
4
|
```
|
4
|
-
const
|
5
|
+
const to_2 = form.addPageBreakItem().setTitle('進学について')
|
5
6
|
.setGoToPage(FormApp.PageNavigationType.SUBMIT);
|
7
|
+
```
|
8
|
+
|
9
|
+
to_2にsetGoToPageを行うことで、「to_2の前のセクション」の回答欄の下部に「送信」ボタンを表示できる"可能性"があります(必ず表示できると言っているわけではありません。後述。)
|
10
|
+
|
11
|
+
たとえば手元の環境では、下記のコードで期待通りに動いています。
|
12
|
+
```js
|
13
|
+
function myFunction() {
|
14
|
+
|
15
|
+
const form = FormApp.getActiveForm()
|
16
|
+
form.setTitle('共通');
|
17
|
+
|
18
|
+
// 共通の選択肢の箱を作っておく
|
19
|
+
const item = form.addMultipleChoiceItem().setTitle('進路について').setRequired(true);
|
20
|
+
|
21
|
+
// セクション:進学
|
22
|
+
const to_1 = form.addPageBreakItem().setTitle('進学について');
|
23
|
+
|
24
|
+
//進学の選択肢
|
25
|
+
const item1 = form.addMultipleChoiceItem().setTitle('下記から、進学希望先を選択してください。').setRequired(true);
|
26
|
+
item1.setChoices([
|
27
|
+
item1.createChoice('大学'),
|
28
|
+
item1.createChoice('短大'),
|
29
|
+
])
|
30
|
+
|
31
|
+
//セクション:就職
|
32
|
+
const to_2 = form.addPageBreakItem().setTitle('就職について');
|
33
|
+
|
34
|
+
// to_2の「前」のセクションの回答欄に、送信ボタンを表示
|
35
|
+
to_2.setGoToPage(FormApp.PageNavigationType.SUBMIT);
|
36
|
+
|
37
|
+
// 就職の選択肢
|
38
|
+
const item2 = form.addMultipleChoiceItem().setTitle('就職先はどの業種を希望していますか').setRequired(true);
|
39
|
+
item2.setChoices([
|
40
|
+
item2.createChoice('総合職'),
|
41
|
+
item2.createChoice('一般職'),
|
42
|
+
]);
|
43
|
+
|
44
|
+
// 最後に共通の選択肢を設定
|
45
|
+
item.setChoices([
|
46
|
+
item.createChoice('進学', to_1),
|
47
|
+
item.createChoice('就職', to_2),
|
48
|
+
]);
|
49
|
+
```
|
50
|
+
しかしながら、**オブジェクトの生成・挿入順序によっては思い通りに行かない場合もある**ようです。
|
51
|
+
質問者さんの手持ちのコードでもうまくいくかは(コードが一部しか記載されていないため)わかりかねます。
|
52
|
+
|
53
|
+
|
54
|
+
---
|
55
|
+
|
56
|
+
別解として、choiceそのものの遷移先にSUBMITを設定する方法もあります。
|
57
|
+
この場合、回答欄の下部に送信ボタンは表示されませんが、回答後、送信ボタンだけが表示されたページに遷移します。
|
58
|
+
```js
|
59
|
+
const item1 = form.addMultipleChoiceItem().setTitle('下記から、進学希望先を選択してください。').setRequired(true);
|
60
|
+
item1.setChoices([
|
61
|
+
item1.createChoice('大学', FormApp.PageNavigationType.SUBMIT),
|
62
|
+
item1.createChoice('短大', FormApp.PageNavigationType.SUBMIT),
|
63
|
+
])
|
6
64
|
```
|