Google apps script 谷歌应用程序脚本客户端到服务器
当我可以将此代码作为web应用程序运行时,此代码无法正常工作。首先,我将此程序部署为web应用程序,然后当我运行URL时,它工作正常,但当我提交一些输入时,我的程序日志显示为“null” 我的计划是: 代码.gsGoogle apps script 谷歌应用程序脚本客户端到服务器,google-apps-script,Google Apps Script,当我可以将此代码作为web应用程序运行时,此代码无法正常工作。首先,我将此程序部署为web应用程序,然后当我运行URL时,它工作正常,但当我提交一些输入时,我的程序日志显示为“null” 我的计划是: 代码.gs function doGet(e) { Logger.log(e.parameter); return HtmlService.createHtmlOutputFromFile("page"); } function userClicked(name){ Logger.log(
function doGet(e) {
Logger.log(e.parameter);
return HtmlService.createHtmlOutputFromFile("page");
}
function userClicked(name){
Logger.log(name);
}
page.html
<!DOCTYPE html>
<html>
<head>
<base target="_top">
</head>
<body>
<input type="text" id="username">
<button id="btn">Submit</button>
</body>
<script>
document.getElementById("btn").addEventListener("click", doStuff);
function doStuff() {
var uname = document.getElementById("username").value;
google.script.run.userClicked(uname);
document.getElementById("username").value="";
}
</script>
</html>
提交
document.getElementById(“btn”)。addEventListener(“单击”,doStuff);
函数doStuff(){
var uname=document.getElementById(“用户名”).value;
google.script.run.userClicked(uname);
document.getElementById(“用户名”).value=“”;
}
这项工作:
问题是你的javascript放错地方了。它是在身体之后,而不是在身体里。所以我只是移动了
标签,现在它可以正常工作了
function showMyDiaog() {
const html='<!DOCTYPE html><html> <head> <base target="_top"> </head> <body> <input type="text" id="username"> <button id="btn">Submit</button> <script> document.getElementById("btn").addEventListener("click",doStuff); function doStuff() { var uname = document.getElementById("username").value; google.script.run.userClicked(uname); document.getElementById("username").value=""; } </script></body></html>';
SpreadsheetApp.getUi().showModelessDialog(HtmlService.createHtmlOutput(html), "Test")
}
function userClicked(name){
Logger.log(name);
}
function doGet(e) {
Logger.log(JSON.stringify(e));
const html='<!DOCTYPE html><html> <head> <base target="_top"> </head> <body> <input type="text" id="username"> <button id="btn">Submit</button> <script> document.getElementById("btn").addEventListener("click",doStuff); function doStuff() { var uname = document.getElementById("username").value; google.script.run.userClicked(uname); document.getElementById("username").value=""; } </script></body></html>';
return HtmlService.createHtmlOutput(html);
}
函数showMyDiaog(){
const html='Submit document.getElementById(“btn”).addEventListener(“click”,doStuff);function doStuff(){var uname=document.getElementById(“username”).value;google.script.run.userClicked(uname);document.getElementById(“username”).value=”“;};
SpreadsheetApp.getUi().showModelessDialog(HtmlService.createHtmlOutput(html),“测试”)
}
函数userClicked(名称){
Logger.log(名称);
}
函数doGet(e){
Logger.log(JSON.stringify(e));
const html='Submit document.getElementById(“btn”).addEventListener(“click”,doStuff);function doStuff(){var uname=document.getElementById(“username”).value;google.script.run.userClicked(uname);document.getElementById(“username”).value=”“;};
返回HtmlService.createHtmlOutput(html);
}
使用google.script.run.userClicked(“Hello!”)进行测试代码>命令。
function showMyDiaog() {
const html='<!DOCTYPE html><html> <head> <base target="_top"> </head> <body> <input type="text" id="username"> <button id="btn">Submit</button> <script> document.getElementById("btn").addEventListener("click",doStuff); function doStuff() { var uname = document.getElementById("username").value; google.script.run.userClicked(uname); document.getElementById("username").value=""; } </script></body></html>';
SpreadsheetApp.getUi().showModelessDialog(HtmlService.createHtmlOutput(html), "Test")
}
function userClicked(name){
Logger.log(name);
}
function doGet(e) {
Logger.log(JSON.stringify(e));
const html='<!DOCTYPE html><html> <head> <base target="_top"> </head> <body> <input type="text" id="username"> <button id="btn">Submit</button> <script> document.getElementById("btn").addEventListener("click",doStuff); function doStuff() { var uname = document.getElementById("username").value; google.script.run.userClicked(uname); document.getElementById("username").value=""; } </script></body></html>';
return HtmlService.createHtmlOutput(html);
}