2014-11-21 96 views
0

我在(Episerver)頁面中嵌入了Google電子表格,並且電子表格是可編輯的。我也在工作表中觸發onEdit。當運行'onEdit'腳本時,我想從當前頁面獲取當前頁面的信息,使用「document.getElementsByClassName()。innerHTML」來獲取當前情景的上下文,這意味着獲取當前登錄的用戶名元素內的部分。在Google Apps腳本中獲取javascript「文檔HTML DOM」信息

我收到錯誤「文檔未定義」,我得到了原因。這只是在網站上運行純腳本的腳本。使用GAS URLFetchApp沒有成功,因爲它沒有獲取當前用戶登錄的當前頁面。正如我所看到的,我有兩種可能的選擇:

a)是否有使用HTML DOM(document ...)在Google Apps腳本中? b)我可以獲取當前頁面而不是在Google Apps腳本中獲取新的URL嗎?

回答

0

A)我認爲你唯一的選擇就是給我們XML service
B)我不這麼認爲,因爲腳本是自包含的,並且不具備與瀏覽器交互的能力。你需要知道一個URL才能獲取它。

但是,您提到您想要執行的操作的一部分是獲取當前登錄的用戶,因此您可能對'.getActiveUser()' method感興趣?這可能是一個潛在的解決方案。

+0

a)謝謝。我將研究XML服務。我沒有試圖讓Google用戶 – JompaBoy 2014-11-21 14:49:18

+0

...和b)我沒有試圖讓Google用戶登錄到Episerver中。如果這樣不斷擾亂我,我會再次嘗試getActiveUser()。但是到目前爲止,我的結論是它只需要表單/腳本的所有者而不是運行腳本的用戶(在另一種情況下,表單將數據提交給電子表格) – JompaBoy 2014-11-21 14:52:41

+0

它有所不同。如果腳本設置爲「作爲我執行」(即,您,開發人員),或者不需要授權,它將不會返回任何內容,否則將返回運行該腳本的用戶的用戶名。 – HDCerberus 2014-11-21 14:54:59