このブログ内でデモを作ろうとしたけれど、うまく動かなかったので画像で。
動きがないとわかりにくいけれどこういう感じです。
コード.gs
function doGet() {
return HtmlService.createHtmlOutputFromFile("index");
}
|
意訳この機能がやること 指定したHTMLファイルを表示する |
index.html
<!DOCTYPE html>
<html>
<body>
<input type="text" list="colors" id="color">
<datalist id="colors">
<option value="blue">
<option value="green">
</datalist>
<form id="radios">
<label><input type="radio" name="radio1" id="blue">blue</label><br>
<label><input type="radio" name="radio1" id="green">green</label>
</form>
<script>
document.getElementById("color").onchange = selectRadio;
function selectRadio() {
var color = document.getElementById("color").value;
var radios = document.getElementById("radios");
var labels = radios.getElementsByTagName("label");
for(var i = 0; i < labels.length; i++) {
if(labels[i].textContent === color) {
labels[i].click();
}
}
}
</script>
</body>
</html>
|
意訳テキストボックス テキストボックスにサジェストするリスト blue green formを配置する blueのラジオボタン greenのラジオボタン ここからJavaScript idが"color"の値が変わったらselectRadioを実行する この機能がやること idが"color"の値を取得する idが"radios"の要素を取得して その中のlabel要素を取得する label要素の数だけ繰り返す label要素のテキストがcolorと同じなら label要素をクリックする |