我有一个简单的html表单:
<label for="phone">Phone: </label> <input id="phone" type="text" /><br />
<label for="address">Address: </label><input id="address" type="text" /><br />
<button id="submit">Submit</button>
我正在尝试完成的JS代码,用于在GSheet中推送数据(我已经创建了应用程序并获得了https://script.google.com/macros/s/XXXXXXXXXXXXXXXXXXXXXXXXXXXXX/exec之类的工作链接。)
<script>
var submit = document.getElementById("submit");
var sample = document.getElementById("sample");
var clear = document.getElementById("clear");
submit.onclick = function(){
var phone = document.getElementById("phone").value;
var address = document.getElementById("address").value;
// i'm lost!
}
</script>
答案 0 :(得分:0)
要设置电子表格中某些单元格的值,您需要首先声明变量ss以指定您正在使用的电子表格。有几种方法:
var ss = SpreadsheetApp.getActiveSheet()
如果您从电子表格中启动脚本,这将正常工作。但是,我认为脚本将由表单提交触发,在这种情况下,您需要指定电子表格的URL:
var ss = SpreadsheetApp.openByUrl("https://docs.google.com/spreadsheets/d/ ... /edit")
接下来,指定要将结果输出到哪个工作表和范围。例如,我们假设您要将值3
放入工作表A1
的单元格Sheet1
中,这些只是一些可能性:
ss.getRange("Sheet1!A1").setValue(3)
或
var sheet = ss.getSheetByName("Sheet2")
sheet.getRange("A1").setValue(3)//could use A1 notation
sheet.getRange(1, 1).setValue(3)//or could use row, column
如果您想一次设置多个单元格,请使用.setValues()
而不是.setValue()
并创建一个数组数组,如下所示:
var values = [[1,2],[3,4]]
sheet.getRange("A1:B2").setValues(values)
//again, could use A1 notation
sheet.getRange(1,1,2,2).setValues(values)
//this is (upmost row, leftmost column, number of rows, number of columns)
内部数组是行,因此这将设置A1:B2
,如下所示:
A B
+-----+-----+--
1 | 1 | 2 |
+-----+-----+--
2 | 3 | 4 |
+-----+-----+--
| | |