GAS - Passing variable to HTML output and then int

2019-09-17 07:13发布

问题:

Code.gs

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

index.html

...
<?= data ?>

The code shown does display the correct values. However, it doesn't translate <br> into html. I'm not sure why it isn't working since template.evaluate() is supposed to return an HtmlOutput object.

回答1:

By default the strings are sanitized, converting special characters to their HTML encoded equivalents (such as < becoming &lt;).

When outputting HTML you must use <?!= to avoid sanitizing the data.

<?!= data ?>

See the details on standard & force-printing scriptlets here: https://developers.google.com/apps-script/guides/html/templates#standard_scriptlets