回答編集履歴

3

fix

2023/12/18 16:36

投稿

退会済みユーザー
test CHANGED
@@ -71,7 +71,7 @@
71
71
  ..他の関数は変える必要がないので略..
72
72
 
73
73
  function doPost(e) {
74
- // 中身全削除。質問のコードからは、送信後は何も画面に返さないということしか読み取れないからこれでいいはず。
74
+ // 中身全削除。
75
75
  return 0;
76
76
  }
77
77
 

2

fix

2023/12/18 16:06

投稿

退会済みユーザー
test CHANGED
@@ -45,7 +45,7 @@
45
45
  reader.addEventListener('load', (e) => {
46
46
  const base64EncodedFileContent = reader.result.split(',')[1];
47
47
  google.script.run.processFormData(
48
- base64EncodedFileContent, file.name, JSON.stringify([...formData])
48
+ base64EncodedFileContent, JSON.stringify([...formData])
49
49
  );
50
50
  audio.play();
51
51
  alert("コメントを送信しました。");
@@ -76,7 +76,7 @@
76
76
  }
77
77
 
78
78
  // ファイル生成、フォーム内容加工の関数。
79
- function processFormData(base64EncodedFileContent, fileName, formdata) {
79
+ function processFormData(base64EncodedFileContent, formdata) {
80
80
  var sheet = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet();
81
81
  ss1 = new Ssheet(ssID1); // 謎
82
82
 

1

fix

2023/12/18 15:58

投稿

退会済みユーザー
test CHANGED
@@ -8,7 +8,7 @@
8
8
  それは面倒なので、submitイベントを捕捉して、その中でbase64にエンコードして、fetch等で送るのが楽。
9
9
  質問のコードでは、GASで受け取ってデータ加工してるので google.script.runが使える。
10
10
   
11
- なお、仮に省略されてる部分に起因するバグがあっても対応できませんので、御自分で調整してください。
11
+ なお、仮に省略されてる部分に起因するバグや要件の違いがあっても対応できませんので、御自分で調整してください。
12
12
 
13
13
  ```html
14
14
  <div class="input">
@@ -34,7 +34,7 @@
34
34
  <script>
35
35
  const audio = document.getElementById("Audio");
36
36
  const playButton = document.getElementById("playButton");
37
- const form = document.querySelectorAll("form")[0];
37
+ const form = document.querySelectorAll('form')[0];
38
38
 
39
39
  // submitイベントを捕捉
40
40
  form.addEventListener('submit', function(event) {
@@ -42,7 +42,7 @@
42
42
  const reader = new FileReader();
43
43
  const formData = new FormData(this);
44
44
  // ファイル読込が完了したら送信
45
- reader.addEventListener("load", (e) => {
45
+ reader.addEventListener('load', (e) => {
46
46
  const base64EncodedFileContent = reader.result.split(',')[1];
47
47
  google.script.run.processFormData(
48
48
  base64EncodedFileContent, file.name, JSON.stringify([...formData])
@@ -55,6 +55,7 @@
55
55
  reader.readAsDataURL(file);
56
56
  } else {
57
57
  alert("ファイルが指定されていません");
58
+ event.preventDefault();
58
59
  }
59
60
  });
60
61
  </script>