我有一些Google文檔和一些文本,並且我創建了一個補充工具欄。我想要的是,當有人突出顯示一個單詞時,然後使用側邊欄中的單選按鈕單擊某個選項,該單詞將根據所選選項以某種顏色突出顯示。 我已經使用HtmlService獲得了單選按鈕的邊欄,並且我有一些Google Apps腳本會突出顯示該單詞。 我正在努力的是找到一種方法來註冊哪個單選按鈕已被點擊,然後可以用來決定選擇哪種顏色。 我已經設法在HTML代碼中使用Javascript觸發動作,但我無法將其與突出顯示該單詞的功能鏈接。我一直試圖設置一個變量,當按鈕被選中,然後可以在If語句中使用,以決定添加什麼顏色。 這是我迄今爲止編寫的GAS代碼和HTML。 如果任何人有任何想法,缺少什麼,他們將不勝感激。 謝謝!在Google文檔側欄上選中單選按鈕時,如何觸發Google文檔中的操作?
//Function to create sidebar and get HTML from file called Index
function sidebar() {
var htmlOutput = HtmlService.createHtmlOutputFromFile('Index')
.setSandboxMode(HtmlService.SandboxMode.IFRAME)
.setTitle('Writing codes');
DocumentApp.getUi().showSidebar(htmlOutput);
}
下面是文件 「的Index.html」
<!DOCTYPE html>
<html>
<head>
<base target="_top">
</head>
<body>
<p>Highlight an area and click on a code below to highlight it in the text.</p>
<form>
<input type="radio" name="error" id="GrammarBut"/> Grammar<br />
<input type="radio" name="error" id="VocabBut"/> Vocabulary<br />
<input type="radio" name="error" id="WOBut"/> Word order<br />
<br />
<div class="block">
<button class="blue">Add</button>
</div>
</form>
</body>
</html>
下面是功能highlightText如果選擇其中突出的單詞。
function highlightText() {
var selection = DocumentApp.getActiveDocument().getSelection();
if (selection) {
var elements = selection.getRangeElements();
for (var i = 0; i < elements.length; i++) {
var element2 = elements[i];
// Only modify elements that can be edited as text; skip images and other non-text elements.
if (element2.getElement().editAsText) {
var text = element2.getElement().editAsText();
if (element2.isPartial()) {
text.setBackgroundColor(element2.getStartOffset(), element2.getEndOffsetInclusive(), "#FFFD4C");
} else {
text.setBackgroundColor("#FFFD4C");
}
}
}
}
}
傑出的工作!非常感謝!對於任何其他人閱讀這個類似的問題,在HTML文檔中,我把上面的按鈕HTML以及