前提・実現したいこと
スプレッドシートに表示させたダイアログ上でユーザにファイルを指定させ、そのファイルのidとnameを取得する機能をGoogle Apps Scriptで作ろうとしています。
ファイルはGoogleDriveの企業用共有フォルダから取得しようとしています。
発生している問題・エラーメッセージ
ファイル情報が取得できない。
条件によってスクリプト(checkFileメソッド)が実行されない。
エラーメッセージは恐らく出ていません。
該当のソースコード
index.html
javascript
1<!DOCTYPE html> 2<html> 3 <head> 4 <base target="_top"> 5 </head> 6 <body> 7 <form> 8 <input nama="myFile" type="file"> 9 <button onclick="google.script.run.checkFile(this.parentNode);">ファイル情報取得</button> 10 </form> 11 </body> 12</html>
.gs
javascript
1function showDialog(){ 2 var html = HtmlService.createHtmlOutputFromFile('index'); 3 SpreadsheetApp.getUi().showModalDialog(html, "fileチェック"); 4} 5 6function checkFile(form){ 7 var formBlob = form.myFile; 8 Logger.log('response=> "%s"', form.getName()); 9} 10 11function myFunction() { 12 this.showDialog(); 13}
試したこと
checkFileメソッドに文字列を渡すと、checkFileメソッドは実行されログには文字列が表示されます。
checkFileメソッドにthis.parentNodeを渡すとログは「ログを待機しています。お待ちください...」のまま変更がなく、記録にはmyFunctionメソッドのみの実行履歴がありcheckFileメソッドの実行履歴は出てきません(文字列を渡した場合はcheckFileメソッドが記録に記載されていました)
別方法としてGoogole Apps Scriptガイドの以下のURLの方法も試してみましたが、値の取得はできませんでした。
https://developers.google.com/apps-script/guides/html/communication#codegs_4
補足情報(FW/ツールのバージョンなど)
mac catalina
スプレッドシート
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。