0

我爲我的學區開發了一個Apps腳本項目。基本上,它爲區域中的每個學生生成文字檔案,預先創建文檔,並將所有信息轉儲到生成的Google表格中。從該Google表格中,教師可以啓動一個網絡應用程序,其中包含網頁表單格式的標題以及文檔視圖,以便他們可以快速輕鬆地對所有內容進行評分並將這些評分發送給學生。老實說,一切正常。現在,當我運行腳本並生成所有這些文檔時,我必須手動進入每個Google表格並複製並粘貼ID,以便Web應用程序可以查找所有學生以及指向其文檔的鏈接你顯然不能在Web App中使用getActiveSpreadsheet()。我希望能夠將此變成一種補充,或者至少可以節省我自己的時間,因爲其他地區開始對此感興趣,我的老師也希望將它調整和實施用於課堂中的其他用途。將Google工作表ID或URL傳遞到Apps Script Web App

那麼,有沒有人有任何想法,我怎麼可以從谷歌工作表中獲取該Google表格ID到Web應用程序?目前,我在Open上創建一個菜單,他們點擊啓動打開對話框的分級應用程序,然後點擊鏈接到分級應用程序。我嘗試使用jquery動態創建該鏈接並將該ID放入URL中,但該鏈接被加擾。我正在猜測與Apps腳本限制有關的事情。

我見過的所有解決方案都涉及ScriptProperties或ScriptDB,我相信這些解決方案已被拿走。

謝謝你的幫助。

回答

0

您可以將參數傳遞給webApp。 doGet(事件)觸發器將其保存在事件對象中。例如,你可以建立的網址: https://script.google.com/.........../exec?scriptId=...

在你的web應用:

function doGet(e){ 
    var scriptId = e.parameter.scriptId; 
    . 
    . 
    . 
} 

你說是越來越「炒」。我會看你的代碼的錯誤。如果您發佈了一些代碼,說明您如何構建網址,我相信我們可以弄清楚。

+0

通過炒作我的意思是,它將開始與n1 ... script.googleuser.content或類似的東西。我意識到,基本上這意味着我寫了我的javascript或jquery錯誤,所以URL沒有正確地形成。所以這是在我的最後不是。 –

+0

對不起,這個項目很瘋狂,反應慢。另外,我喜歡在我剛回復回復之前咀嚼東西。我很感謝您的回答,但我需要您啓動網絡應用的Google表格的ID。所以我可以使用var scriptId = e.parameter.sheetId?因爲我希望該表單ID作爲Web應用程序URL中的參數,所以我想在openById()中使用它。 –

相關問題