Javascript 在html文件中显示应用程序脚本文件中的数组
我在应用程序脚本中获得了一系列电子邮件草稿。我想在一个html文件中的select元素中显示它们,但当我运行它时,它会显示为空白。代码如下 代码.gsJavascript 在html文件中显示应用程序脚本文件中的数组,javascript,html,google-apps-script,Javascript,Html,Google Apps Script,我在应用程序脚本中获得了一系列电子邮件草稿。我想在一个html文件中的select元素中显示它们,但当我运行它时,它会显示为空白。代码如下 代码.gs function doGet(e) { return HtmlService.createHtmlOutput("index"); } function doSomething() { var drafts = GmailApp.getDrafts(); var drafty = []; for(var i = 0; i &
function doGet(e) {
return HtmlService.createHtmlOutput("index");
}
function doSomething() {
var drafts = GmailApp.getDrafts();
var drafty = [];
for(var i = 0; i < drafts.length; i++){
drafty.push(drafts[i].getMessage().getSubject());
}
Logger.log(drafty);
return drafty;
var select = document.getElementById("select"),
arr = drafty;
for(var i = 0; i < arr.length; i++)
{
var option = document.createElement("OPTION"),
txt = document.createTextNode(arr[i]);
option.setAttribute("value", arr[i]);
option.appendChild(txt);
document.getElementById("select").appendChild(option);
}
函数doGet(e){
返回HtmlService.createHtmlOutput(“索引”);
}
函数doSomething(){
var drafts=GmailApp.getDrafts();
var drafty=[];
对于(变量i=0;i
index.html
<!DOCTYPE html>
<html>
<head>
<script>
google.script.run.doSomething();
</script>
</head>
<body>
<select id="select" class="addon-select addon-form-input"></select>
</body>
google.script.run.doSomething();
类似这样的内容:
一般事务:
函数doSomething(){
var drafts=GmailApp.getDrafts();
var drafty=[];
对于(var i=0;iYou可能希望将onSelect
更改为onChange
。您目前拥有用于在服务器上设置select标记的JavaScript。它在那里不起作用。谢谢@Cooper-您能建议如何更改它吗?将其移动到客户端。@Cooper如何做到这一点?您的意思是将gs添加到html中吗?如果是,我尝试了这一点。)完成后,GmailApp函数就不起作用了
function doSomething() {
var drafts=GmailApp.getDrafts();
var drafty=[];
for(var i=0;i<drafts.length;i++){
drafty.push(drafts[i].getMessage().getSubject());
}
Logger.log(drafty);
return drafty;
}
<!DOCTYPE html>
<html>
<head>
<script>
google.script.run
.withSuccessHandler(function(A){
var id='select';
var select = document.getElementById(id);
select.options.length = 0;
for(var i=0;i<A.length;i++) {
select.options[i] = new Option(A[i],A[i]);
}
})
.doSomething();
</script>
</head>
<body>
<select id="select"></select>
</body>
</html>