将 showModalDialog() 的内容添加到剪贴板 Google 脚本
Add content of showModalDialog() to the clipboard Google Script
当我单击按钮时,我已将格式化数据添加到模态对话框
我希望 showModalDialog()
的内容也能在我单击按钮时自动添加到剪贴板
正在使用以下代码生成模态,temp
是我要添加到剪贴板的输出
//Output to Html
var htmlOutput = HtmlService
.createHtmlOutput(temp)
.setSandboxMode(HtmlService.SandboxMode.IFRAME)
.setWidth(600)
.setHeight(500);
SpreadsheetApp.getUi().showModalDialog(htmlOutput, 'Filter OptionList Maker');
编辑;好的,我猜 Modal Dialog
可能是题外话,正确的问题可能是如何将格式化字符串 temp
添加到剪贴板
这是我所说的格式化字符串的示例
filter {
target: element;
as: dropdown;
padding: 5;
summary: "Network Practice";
default: show-all;
multiple: true;
option {
label: "< 1 year";
selector: element["NETWORK PRACTICE"="< 1 year"];
}
option {
label: "1-3 years";
selector: element["NETWORK PRACTICE"="1-3 years"];
}
option {
label: "3-10 years";
selector: element["NETWORK PRACTICE"="3-10 years"];
}
option {
label: "> 10 years";
selector: element["NETWORK PRACTICE"=">10 years"];
}
}
我已经搜索过如何执行此操作,但没有找到解决方案
谢谢
您可以在 html 中创建一个 textarea
并使用 html 中的按钮将其中的数据复制到剪贴板。
片段:
copy.html:
<textarea id="copy"><?=temp?></textarea>
<button>Copy</button>
<script type="text/javascript">
let t = document.getElementById('copy');
let copy = () => {
t.select();
document.execCommand('copy');
};
copy();//try copying without user click
let bt = document.querySelector('button');
bt.addEventListener('click', copy);
</script>
code.gs
//Output to Html
var template = HtmlService.createTemplateFromFile('copy');
template.temp = temp;
var htmlOutput = template.evaluate();
SpreadsheetApp.getUi().showModalDialog(htmlOutput, 'Filter OptionList Maker');
阅读:
当我单击按钮时,我已将格式化数据添加到模态对话框
我希望 showModalDialog()
的内容也能在我单击按钮时自动添加到剪贴板
正在使用以下代码生成模态,temp
是我要添加到剪贴板的输出
//Output to Html
var htmlOutput = HtmlService
.createHtmlOutput(temp)
.setSandboxMode(HtmlService.SandboxMode.IFRAME)
.setWidth(600)
.setHeight(500);
SpreadsheetApp.getUi().showModalDialog(htmlOutput, 'Filter OptionList Maker');
编辑;好的,我猜 Modal Dialog
可能是题外话,正确的问题可能是如何将格式化字符串 temp
添加到剪贴板
这是我所说的格式化字符串的示例
filter {
target: element;
as: dropdown;
padding: 5;
summary: "Network Practice";
default: show-all;
multiple: true;
option {
label: "< 1 year";
selector: element["NETWORK PRACTICE"="< 1 year"];
}
option {
label: "1-3 years";
selector: element["NETWORK PRACTICE"="1-3 years"];
}
option {
label: "3-10 years";
selector: element["NETWORK PRACTICE"="3-10 years"];
}
option {
label: "> 10 years";
selector: element["NETWORK PRACTICE"=">10 years"];
}
}
我已经搜索过如何执行此操作,但没有找到解决方案
谢谢
您可以在 html 中创建一个 textarea
并使用 html 中的按钮将其中的数据复制到剪贴板。
片段:
copy.html:
<textarea id="copy"><?=temp?></textarea>
<button>Copy</button>
<script type="text/javascript">
let t = document.getElementById('copy');
let copy = () => {
t.select();
document.execCommand('copy');
};
copy();//try copying without user click
let bt = document.querySelector('button');
bt.addEventListener('click', copy);
</script>
code.gs
//Output to Html
var template = HtmlService.createTemplateFromFile('copy');
template.temp = temp;
var htmlOutput = template.evaluate();
SpreadsheetApp.getUi().showModalDialog(htmlOutput, 'Filter OptionList Maker');