我对编码有点陌生。我必须做一些东西,从超文本标记语言表单提交数据到谷歌表。我启用了API并遵循了所有步骤。现在我尝试使用变量firstName,lastName,phoneNumber和email来允许输入在单击提交按钮时提交。我没有使用表格,但如果需要,我愿意使用它。再次澄清一下:当你将文本放入输入框时,它应该在点击提交后将其附加到谷歌表格中。您需要一个端口为8000的python本地服务器,并运行html文件使其工作。
这里的问题是,我无法使用变量(firstName、lastName、email和phoneNumber)代替execute函数中“values”部分的字符串。每当我单击execute按钮时,它都会附加字符串,例如“Place_Holder”,但当我输入firstName时,它不会附加。很抱歉这么长时间的解释。这是我第一次在这里发帖。
<!DOCTYPE html>
<html>
<head>
<title>googleapi</title>
</head>
<body>
<h1>Information Form</h1>
<div>
<p>First Name:</p>
<input type="text" id="firstNameInput">
</div>
<div>
<p>Last Name:</p>
<input type="text" id="lastNameInput">
</div>
<div>
<p>Email:</p>
<input type="text" id="emailInput">
</div>
<div>
<p>Phone Number:</p>
<input type="number" id="phoneNumberInput">
</div>
<button id="submitButton">Submit</button>
<p id="submitMessage"></p>
<script>
document.getElementById("submitButton").addEventListener("click", displayMessage );
function displayMessage() {
var firstName = document.getElementById('firstNameInput').value;
var lastName = document.getElementById('lastNameInput').value;
var email = document.getElementById('emailInput').value;
var phoneNumber = document.getElementById('phoneNumberInput').value;
document.getElementById("submitMessage").innerHTML = "Hello " + firstName + " " + lastName + " your information has been submitted";
}
</script>
</body>
</html>
<script src="https://apis.google.com/js/api.js"></script>
<script>
/**
* Sample JavaScript code for sheets.spreadsheets.values.append
* See instructions for running APIs Explorer code samples locally:
* https://developers.google.com/explorer-help/guides/code_samples#javascript
*/
function authenticate() {
return gapi.auth2.getAuthInstance()
.signIn({scope: "https://www.googleapis.com/auth/drive https://www.googleapis.com/auth/drive.file https://www.googleapis.com/auth/spreadsheets"})
.then(function() { console.log("Sign-in successful"); },
function(err) { console.error("Error signing in", err); });
}
function loadClient() {
return gapi.client.load("https://content.googleapis.com/discovery/v1/apis/sheets/v4/rest")
.then(function() { console.log("GAPI client loaded for API"); },
function(err) { console.error("Error loading GAPI client for API", err); });
}
</script>
<script>
// Make sure the client is loaded and sign-in is complete before calling this method.
function execute() {
return gapi.client.sheets.spreadsheets.values.append({
"spreadsheetId": "*removed*",
"range": "A1:D2",
"includeValuesInResponse": "false",
"insertDataOption": "INSERT_ROWS",
"responseDateTimeRenderOption": "SERIAL_NUMBER",
"valueInputOption": "USER_ENTERED",
"resource": {
"values": [
[
"Place_Holder",
"Place_Holder",
"Place_Holder",
"Place_Holder"
]
]
}
})
.then(function(response) {
// Handle the results here (response.result has the parsed body).
console.log("Response", response);
},
function(err) { console.error("Execute error", err); });
}
gapi.load("client:auth2", function() {
gapi.auth2.init({client_id: '*removed*'});
});
</script>
<button onclick="authenticate().then(loadClient)">authorize and load</button>
<button onclick="execute()">execute</button>
<script src="main.js"></script>
<link rel="stylesheet" type="text/css" href="styles.css">
`
我理解你的处境和你想做的事情如下。
如果我的上述理解是正确的,那么这次修改如何?
我认为变量不能放在Sheet中的原因是当运行执行()
时没有检索到变量。因此,当运行执行()
时,它会进行修改以检索变量。
请修改如下。运行此脚本时,请按浏览器上的执行按钮。
function execute() {
return gapi.client.sheets.spreadsheets.values.append({
"spreadsheetId": "*removed*",
"range": "A1:D2",
"includeValuesInResponse": "false",
"insertDataOption": "INSERT_ROWS",
"responseDateTimeRenderOption": "SERIAL_NUMBER",
"valueInputOption": "USER_ENTERED",
"resource": {
"values": [
[
"Place_Holder",
"Place_Holder",
"Place_Holder",
"Place_Holder"
]
]
}
})
function execute() {
var firstName = document.getElementById('firstNameInput').value;
var lastName = document.getElementById('lastNameInput').value;
var email = document.getElementById('emailInput').value;
var phoneNumber = document.getElementById('phoneNumberInput').value;
return gapi.client.sheets.spreadsheets.values.append({
"spreadsheetId": "*removed*",
"range": "A1:D2",
"includeValuesInResponse": "false",
"insertDataOption": "INSERT_ROWS",
"responseDateTimeRenderOption": "SERIAL_NUMBER",
"valueInputOption": "USER_ENTERED",
"resource": {
"values": [
[
firstName,
lastName,
email,
phoneNumber
]
]
}
})
如果我误解了你的问题,这不是你想要的,对不起。
我使用Google Sheets API在我的javascript应用程序中显示我的Google电子表格中的数据。已通过引用此留档开发。我可以从电子表格中读取值,但对于某些列,单元格合并如下。 我得到的Json响应如下所示 我的预期输出应该是 有什么帮助吗?
GoogleSheets文档可以包含一些表单。第一个是默认值和“0”。一般情况下,任何工作表都有如下地址: https://docs.google.com/spreadsheets/d/(spreadsheetId)/编辑#gid=(sheetId) 同时具有和。 但是在API文档中没有提到如何使用。我只能读取和编辑给定的默认表格。 如果在来自示例性链接中显示的代码,我添加了属性,我得到错误:
我有一个谷歌表,我想从我们的服务器更新它的数据。目前我正在使用谷歌工作表脚本编辑器。 但是我开始意识到还有另一种方法可以更新我的谷歌表格。那就是使用谷歌表单apihttps://developers.google.com/sheets/api/samples/writinghttps://developers.google.com/sheets/api/reference/rest/https:/
在我的Android应用程序,我想追加一行(与新的食品订单信息)到谷歌表格的顶部。从https://developers.google.com/sheets/api/reference/rest/v4/spreadsheets.values/append留档听起来我只能追加到表的底部。但是我真的需要从顶部追加新行,我怀疑这是不可能的。 我能够使用以下代码将行追加到底部: 是否可以将该行附加到表的顶
我正在开发一个Android应用程序,它使用谷歌电子表格作为数据库。应用程序应该使用Sheets API v4获取、附加和更新电子表格中的值。前两个函数工作正常,但我很难更新特定行。我需要找到在第一列(“批次ID”)中有特定值的行,并更新此行中的所有单元格。 现在我得到的行被修改为这样: 这实际上运行良好,但我认为这是一个丑陋的解决方案,我相信有一个更好的解决方案。 我已经阅读了工作表API留档,
如果我想发布Google Sheets电子表格,以便将其嵌入iframe中的页面,我会手动执行以下操作: 导航到谷歌驱动器 打开一个电子表格 文件 如何在前端使用JavaScript通过GoogleSheetsAPI编程实现上述功能?我正在应用程序中动态生成电子表格,并希望在创建后立即将其嵌入页面。 创建工作表后,我可以使用必要的属性(工作表ID等)动态创建iframe元素。这是一个错误。从这个问
我的谷歌页面上有几个栏目。列数随时间变化(将来可能会添加新列)。如果我的床单看起来像这样,我想得到一张地图或类似的东西: 查看我的工作表 API调用的响应: 换句话说,我想在api响应的工作表中获取列名及其标签。或者,任何类似的方法也会起作用。我不知道该做什么API调用。我知道调用,但我不知道如何获取此表中列的标签。我只能得到一定范围内的数据。我不知道如何获得列的标签。
问题内容: 我如何在for循环中创建变量变量? 这是循环: 在此循环中,我想为每次传递创建一个$ seat变量,但必须像这样递增。第一次通过应该是,下次通过:等等。 所以最后应该是: 等等。 因此$ _POST的变量和内容应该是动态的。 问题答案: 首先,除非缺少某些内容,否则我将为此使用数组。具有像变量,等趋于具有少得多的效用和是更为繁琐比使用的阵列。 话虽这么说,使用以下语法: 最后,PHP具