Javascript 通过可编辑的html表格编辑Google工作表数据
我试图通过html表编辑google工作表数据,我已成功更新了html表中的数据,但无法编辑html表和google工作表中的相同数据 HTMLoutput表中的谷歌表单数据为:Javascript 通过可编辑的html表格编辑Google工作表数据,javascript,google-apps-script,google-sheets,Javascript,Google Apps Script,Google Sheets,我试图通过html表编辑google工作表数据,我已成功更新了html表中的数据,但无法编辑html表和google工作表中的相同数据 HTMLoutput表中的谷歌表单数据为: function list(){ var percentiles = SpreadsheetApp.openByUrl(url).getSheetByName("Advance").getRange(2,3).getValues(); var rawScores = SpreadsheetApp.
function list(){
var percentiles = SpreadsheetApp.openByUrl(url).getSheetByName("Advance").getRange(2,3).getValues();
var rawScores = SpreadsheetApp.openByUrl(url).getSheetByName("Advance").getRange(2,4).getValues();
var input = rawScores.indexOf(console);
Logger.log(input);
function map(input) {
for (var i = 0; i <rawScores.length; i++) {
if (rawScores[i] >= input) {
return percentiles[i];
}
}
}
}
函数列表(){
var percentiles=SpreadsheetApp.openByUrl(url).getSheetByName(“高级”).getRange(2,3).getValues();
var rawScores=SpreadsheetApp.openByUrl(url).getSheetByName(“Advance”).getRange(2,4).getValues();
var输入=rawScores.indexOf(控制台);
Logger.log(输入);
函数映射(输入){
对于(变量i=0;i=input){
返回百分位数[i];
}
}
}
}
下面是我用来更新HTMLtable的脚本:-
<script>
document.addEventListener('DOMContentLoaded', function() {
google.script.run.withSuccessHandler(generate).getTable();
});
function generate(dataArray){
var tbody = document.getElementById("table-body");
dataArray.forEach(function(r){
var row =document.createElement("tr");
var col1 =document.createElement("td");
col1.textContent = r[0];
var col2 =document.createElement("td");
col2.textContent = r[1];
var col3 =document.createElement("td");
col3.textContent = r[2];
var col4 =document.createElement("td");
col4.textContent = r[3];
var col5 =document.createElement("td");
col5.textContent = r[4];
var col6 =document.createElement("td");
col6.textContent = r[5];
var col7 =document.createElement("td");
col7.textContent = r[6];
var col8 =document.createElement("td");
col8.textContent = r[7];
var col9 =document.createElement("td");
col9.textContent = r[8];
var col10 =document.createElement("td");
col10.textContent = r[9];
row.appendChild(col1);
row.appendChild(col2);
row.appendChild(col3);
row.appendChild(col4);
row.appendChild(col5);
row.appendChild(col6);
row.appendChild(col7);
row.appendChild(col8);
row.appendChild(col9);
row.appendChild(col10);
tbody.appendChild(row);
});
}
</script>
document.addEventListener('DOMContentLoaded',function(){
google.script.run.withSuccessHandler(generate.getTable();
});
函数生成(数据数组){
var tbody=document.getElementById(“表体”);
dataArray.forEach(函数(r){
var行=document.createElement(“tr”);
var col1=document.createElement(“td”);
col1.textContent=r[0];
var col2=document.createElement(“td”);
col2.textContent=r[1];
var col3=document.createElement(“td”);
col3.textContent=r[2];
var col4=document.createElement(“td”);
col4.textContent=r[3];
var col5=document.createElement(“td”);
col5.textContent=r[4];
var col6=document.createElement(“td”);
col6.textContent=r[5];
var col7=document.createElement(“td”);
col7.textContent=r[6];
var col8=document.createElement(“td”);
col8.textContent=r[7];
var col9=document.createElement(“td”);
col9.textContent=r[8];
var col10=document.createElement(“td”);
col10.textContent=r[9];
行。追加子行(col1);
行。追加子行(col2);
第行。追加子项(col3);
第行。追加子行(col4);
行。追加子行(col5);
第行。追加子行(第6列);
第行。追加子行(col7);
第8行为appendChild(col8);
第行。追加子行(第9列);
第行。追加子行(第10列);
tbody.appendChild(世界其他地区);
});
}
Google Sheets表只能通过应用程序脚本功能在服务器端更新。
我假设您正在使用Web应用程序
您可以使用从项目的HTML
文件调用应用程序脚本函数
样本:
- 定义变量
dataArray
<script>
...
google.script.run.updateTable(dataArray);
...
</script>
function updateTable(dataArray){
var myValues=[];
myValues[0]=[];
for(var i=0; i<dataArray.length;i++){
myValues[0][i]=dataArray[i];
}
var myRow=SpreadsheetApp.openByUrl(url).getSheetByName("MY SHEET").getRange("The Range Of My Row"); // e.g. getRange(1,1,1,10); to obtain the first 10 columns of the first row
myRow.setValues(myValues);
}