前提・実現したいこと
HTMLとGASで独自のフォームを作成しています。
その中で、Formタグ内部で選択したものをスプレッドシートに反映しようと考えています。
以前まで、出来ていたのに急に下記エラーが発生しました。
解決方法を知っている方はご教示お願い致します。
html
1 <body> 2 3 <table> 4 <p class="line-block" >検索</p> 5 6 <form method="post" action="ID"> 7 <tr> 8 <th>名前</th> 9 <!-- <td><input name="enp_name" type="select" id="enp_name" > <input type="submit" value="検索"></td> --> 10 <td> 11 <script> 12 13 //スプレッドシート側からデータを取得する 14 google.script.run.withSuccessHandler(onSuccess2).dropman(); 15 16 //取得したデータでドロップダウンメニューを作って設置 17 function onSuccess2(data){ 18 var json = JSON.parse(data); 19 var datalength = json.length; 20 21 //ラベルを入れる 22 var name_html = ""; 23 //selectタグの頭を入れる 24 name_html += "<select title='プルダウンより選択'><option>名前を選択</option>"; 25 //HTMLデータの生成 26 for(var i = 0;i<datalength;i++){ 27 //空データの場合ループ脱出 28 if(json[i] == ""){ 29 break; 30 } 31 //オプション項目を追加 32 name_html += "<option>" + json[i] + "</option>"; 33 } 34 //selectタグの下を入れる 35 name_html += "</select>"; 36 //プルダウンメニューを設置する 37 document.getElementById("pulldown").innerHTML = name_html; 38 } 39 </script> 40 <!-- ドロップダウンメニュー設置場所 --> 41 <div > 42 <span class="line-block" style="text-align" id="pulldown";></span> 43 <input class="line-block" name="enp_name" type="submit" value="検索"> 44 </div> 45 </td> 46 </tr> 47 </form> 48 49 <tr> 50 <th>リンク</th> 51 <td> 52 <div > 53 <span id="link"> 54 <textarea name="link" id="link" cols="110" rows="1" type="text"> 55 <?= poplink() ?> 56 </textarea> 57 </span> 58 </div> 59 </td> 60 </tr> 61 62 <tr> 63 <th>補足</th> 64 <td> 65 66 <div > 67 <span id="introduction_Box"> 68 <textarea name="introduction_Box" id="introduction_Box" cols="70" rows="18" type="text"> 69 <?= popintroduction() ?> 70 </textarea> 71 </span> 72 </div> 73 74 </td> 75 </tr> 76 77 <tr> 78 <td><button class="btn" name="copy" type="button">コピー</button></td> 79 </tr> 80 </table> 81
GAS
1var sheet = "ID"; 2 3function doGet() { 4 5 var html = HtmlService.createTemplateFromFile('top.html').evaluate(); 6 html.setTitle("社員情報"); 7 html.setFaviconUrl("https://drive.google.com/uc?id=13wY_LsPFagcYs2UwCAkn4WeBNS3hnu__&.ico"); 8 return html; 9} 10 11 12//ドロップダウン用データをHTML側に返してあげる関数 13function dropman(){ 14 15 //シートを取得 16 var list = SpreadsheetApp.openById(sheet).getSheetByName("一覧").getRange("B2:B").getValues(); 17 Logger.log(list.length); 18 //取得データを返す 19 return JSON.stringify(list); 20} 21 22function doPost(e) { 23 24 var nameoutput = SpreadsheetApp.openById(sheet).getSheetByName("検索"); 25 var enp_name = JSON.parse(e.postData.getDataAsString()); 26 27 nameoutput.getRange(2,3).setValue(enp_name); 28 29} 30 31//リンクをHTML側に返してあげる関数 32function poplink(){ 33 34 //シートを取得 35 var list = SpreadsheetApp.openById(sheet).getSheetByName("検索").getRange("C6").getValue(); 36 Logger.log(list); 37 38 //取得データを返す 39 return list; 40 41} 42 43//補足文をHTML側に返してあげる関数 44function popintroduction(){ 45 46 //シートを取得 47 var list = SpreadsheetApp.openById(sheet).getSheetByName("検索").getRange("C4").getValue(); 48 Logger.log(list); 49 //取得データを返す 50 return list; 51 52} 53
発生している問題・エラーメッセージ
エラーメッセージ Google Docs encountered an error. Please try reloading this page, or coming back to it in a few minutes. To learn more about the Google Docs editors, please visit our help center. We're sorry for the inconvenience. - The Google Docs Team ___________________________________________ Googleドキュメントでエラーが発生しました。このページをリロードするか、数分後に戻ってみてください。 Googleドキュメントエディタの詳細については、ヘルプセンターにアクセスしてください。 ご不便をおかけして申し訳ございません。 -Googleドキュメントチーム ### 試したこと ・キャッシュの削除 ・スプレッドシートの権限を編集者にする