我正在使用Google可視化查詢從此spreadsheet中提取列標題。目前,我必須在菜單中包含我想要的每個單元格的行和列索引。我想要的是一個腳本,它將使用電子表格第1行中單元格的數據動態填充此菜單。換句話說,使菜單與電子表格上的內容一樣大或小。從Google電子表格數據構建/填充網頁上的下拉菜單
我相信我需要類似以下的東西,但我不確定如何實現它。也許我需要服務器端腳本(GAS)來完成這個?
<select>
for (var i = 0; i < data.length; ++i) {
<option>!= data[i] </option>
}
</select>
我發現大量的文檔來完成這個使用谷歌的HTMLService,但我需要這個菜單來使用不同的服務託管。
任何幫助將不勝感激。謝謝!
我當前的代碼如下...
google.load('visualization', '1', {'packages':['corechart']});
\t google.setOnLoadCallback(ValIDS);
\t function ValIDS() {
\t var queryValIDS = new google.visualization.Query('https://docs.google.com/spreadsheet/ccc?key=1HpHMfoEnPgESb2XPVCgb7XyGwRAvrq3EoQj4WHj4vhA&sheet=QUERY2');
\t queryValIDS.send(handleQueryValIDResponse);
}
\t function handleQueryValIDResponse(response) {
if (response.isError()) {
alert('Error in ID Validation Query: ' + response.getMessage() + ' ' + response.getDetailedMessage());
return;
}
\t var datatable = response.getDataTable(); \t
\t var cat1 = datatable.getValue(0,0);
\t var cat2 = datatable.getValue(0,1);
\t var cat3 = datatable.getValue(0,2);
\t var cat4 = datatable.getValue(0,3);
\t var cat5 = datatable.getValue(0,4);
\t var cat6 = datatable.getValue(0,5);
\t var cat7 = datatable.getValue(0,6);
\t var cat8 = datatable.getValue(0,7);
\t var cat9 = datatable.getValue(0,8);
\t var cat10 = datatable.getValue(0,9);
\t
\t
\t \t document.getElementById('cat1').innerHTML = cat1;
\t \t document.getElementById('cat2').innerHTML = cat2;
\t \t document.getElementById('cat3').innerHTML = cat3;
\t \t document.getElementById('cat4').innerHTML = cat4;
\t \t document.getElementById('cat5').innerHTML = cat5;
\t \t document.getElementById('cat6').innerHTML = cat6;
\t \t document.getElementById('cat7').innerHTML = cat7;
\t \t document.getElementById('cat8').innerHTML = cat8;
\t \t document.getElementById('cat9').innerHTML = cat9;
\t \t document.getElementById('cat10').innerHTML = cat10;
\t \t \t \t
}
function myFunction() {
document.getElementById("myDropdown").classList.toggle("show");
}
window.onclick = function(event) {
if (!event.target.matches('.dropbtn')) {
var dropdowns = document.getElementsByClassName("dropdown-content");
var i;
for (i = 0; i < dropdowns.length; i++) {
var openDropdown = dropdowns[i];
if (openDropdown.classList.contains('show')) {
openDropdown.classList.remove('show');
}
}
}
}
.dropbtn {
background-color: #4CAF50;
color: white;
padding: 16px;
font-size: 16px;
border: none;
cursor: pointer;
}
.dropbtn:hover, .dropbtn:focus {
background-color: #3e8e41;
}
.dropdown {
position: relative;
display: inline-block;
}
.dropdown-content {
display: none;
position: absolute;
background-color: #f9f9f9;
min-width: 160px;
overflow: auto;
box-shadow: 0px 8px 16px 0px rgba(0,0,0,0.2);
}
.dropdown-content a {
color: black;
padding: 12px 16px;
text-decoration: none;
display: block;
}
.dropdown a:hover {background-color: #f1f1f1}
.show {display:block;}
.dropbtn {
background-color: #4CAF50;
color: white;
padding: 16px;
font-size: 16px;
border: none;
cursor: pointer;
}
.dropbtn:hover, .dropbtn:focus {
background-color: #3e8e41;
}
.dropdown {
position: relative;
display: inline-block;
}
.dropdown-content {
display: none;
position: absolute;
background-color: #f9f9f9;
min-width: 160px;
overflow: auto;
box-shadow: 0px 8px 16px 0px rgba(0,0,0,0.2);
}
.dropdown-content a {
color: black;
padding: 12px 16px;
text-decoration: none;
display: block;
}
.dropdown a:hover {background-color: #f1f1f1}
.show {display:block;}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<script type="text/javascript" src="https://www.google.com/jsapi"></script>
<div class="dropdown">
<button onclick="myFunction()" class="dropbtn">Dropdown</button>
<div id="myDropdown" class="dropdown-content">
<a href="#"><div id="cat1"></div></a>
<a href="#"><div id="cat2"></div></a>
<a href="#"><div id="cat3"></div></a>
\t <a href="#"><div id="cat4"></div></a>
<a href="#"><div id="cat5"></div></a>
<a href="#"><div id="cat6"></div></a>
\t <a href="#"><div id="cat7"></div></a>
<a href="#"><div id="cat8"></div></a>
<a href="#"><div id="cat9"></div></a>
\t <a href="#"><div id="cat10"></div></a>
</div>
</div>
的WhiteHat你真棒!對不起,我不得不離開電腦,我的會話超時。感謝您花時間解釋代碼。還有一個問題,請......我嘗試過使用'(var i = 0; i
firenemus
隨時可以看到__EDIT__以上 – WhiteHat
啊,當然!!!作爲一名中學老師,我真的很感謝你的耐心,因爲我正在慢慢學習。我對那啤酒很認真。你幫了我很多。你有PayPal賬戶嗎?我想送你幾塊錢給你。再次感謝! – firenemus