在Google Apps Script(GAS)中,Scriptlet是一种在Google Workspace文档中嵌入的JavaScript代码片段。要在Scriptlet中传递JavaScript变量,通常有以下几种方法:
你可以在HTML模板中直接使用Scriptlet来嵌入JavaScript变量。例如:
<!-- 在Google Docs或Sheets中 -->
<script>
var myVariable = "Hello, World!";
</script>
<div>
<?= myVariable ?>
</div>
在这个例子中,myVariable
的值会被直接嵌入到HTML中。
如果你需要在客户端(浏览器)和服务器端(GAS)之间传递变量,可以使用以下方法:
<script>
function sendToServer() {
var myVariable = "Hello, World!";
google.script.run.withSuccessHandler(onSuccess).processData(myVariable);
}
function onSuccess(response) {
console.log("Server response:", response);
}
</script>
<button onclick="sendToServer()">Send to Server</button>
function processData(data) {
// 处理数据
Logger.log("Received data:", data);
return "Data processed successfully";
}
在这个例子中,客户端通过google.script.run
调用服务器端的processData
函数,并传递变量myVariable
。
如果你需要在多个页面之间传递变量,可以考虑使用Cookies或LocalStorage:
<script>
// 设置Cookie
document.cookie = "myVariable=Hello, World!; path=/";
// 或者使用LocalStorage
localStorage.setItem('myVariable', 'Hello, World!');
</script>
然后在其他页面中读取这些值:
<script>
// 读取Cookie
var cookies = document.cookie.split(';');
for (var i = 0; i < cookies.length; i++) {
var cookie = cookies[i].trim();
if (cookie.indexOf("myVariable=") == 0) {
var myVariable = cookie.substring("myVariable=".length, cookie.length);
console.log(myVariable);
break;
}
}
// 或者读取LocalStorage
var myVariable = localStorage.getItem('myVariable');
console.log(myVariable);
</script>
通过上述方法,你可以在Google Apps Script中有效地传递和管理JavaScript变量。
领取专属 10元无门槛券
手把手带您无忧上云