2015-02-11 53 views
0

Code.gsGAS - 傳遞變量到HTML輸出,然後進入一個scriptlet

function doPost(e) { 
    ... 
    template.data += getCustomerData + "<br>"; 
} 
return template.evaluate().setSandboxMode(HtmlService.SandboxMode.IFRAME); 

的index.html

... 
<?= data ?> 

,並不包括顯示正確的值的代碼。但是,它不會將<br>轉換爲html。我不知道爲什麼它不起作用,因爲template.evaluate()應該返回一個HtmlOutput對象。

回答

6

默認情況下,字符串會被清理,將特殊字符轉換爲其HTML編碼的等效字符(例如<變爲& lt;)。

輸出HTML時,必須使用<?!=以避免消毒數據。

<?!= data ?>

參見標準&力印刷小腳本這裏的細節: https://developers.google.com/apps-script/guides/html/templates#standard_scriptlets

+0

這並設置數據,但是,它是有限的,因爲數據需要預先格式化(除非它的東西簡單就像一個字符串或數字)。有關將服務器變量傳遞給客戶端html的更全面的方法,請參閱此答案:我在此處提供了有關此問題的答案:http://stackoverflow.com/a/38314034/2213940 – 2016-07-11 18:56:18

相關問題