Привет, ребята, я изо всех сил пытаюсь достичь этого. Я создал скрипт веб-приложения в скрипте Google Apps. то, что я хочу сделать, - когда я отправляю свою форму, я получаю данные электронной таблицы в мою таблицу> tbody в виде строк в моем файле index.html.
PS: я использую JQuery
Спасибо, кстати
code.gs
function getTableRows(sheetname){
if(sheetname){
var mysheet = sheetname
}else{
var mysheet = 'my sheet name'
}
var tableRows = [];
var sheet = SpreadsheetApp.openById('myspreadsheetID').getSheetByName(mysheet);
var lastRow = sheet.getLastRow();
var lastColumn = sheet.getLastColumn();
var theRange = sheet.getDataRange()
var Rangedata = theRange.getValues()
for (var i=1; i < Rangedata.length; i++){
tableRows.push(Rangedata[i])
}
return tableRows
}
javascript.js
function loadTableData(data){
var tableRow = $('#tableSheet tbody');
var markup = "";
for (var i = 0; i < data.length; i++) {
markup += "<tr>";
for(var j=0; j < data[i].length; j++){
markup += "<td>" + data[i][j] + "</td>";
}
markup += "</tr>";
}
tableRow.html(markup);
}
function onFormSubmit(){
var selectedSheet = $('#sheetSelector option:selected').text();
alert(selectedSheet)
google.script.run
.withSuccessHandler(loadTableData)
.withFailureHandler(showError)
.getTableRows(selectedSheet)
}
index.html
===========
<form id="frmSheetQuery" name="frmSheetQuery" method="GET" action="<?= pubUrl ?>" class="form-inline" onsubmit="event.preventDefault();">...</form>
<table id="tableSheet" class="table">
<thead>
<tr id="tableRowHeader">
<th scope="col">... header row goes here</th>
...
</tr>
</thead>
<tbody id="tableRows">
</tbody>
</table>