Javascript 通过AJAX请求提交时显示未定义值的Google电子表格
我正试图将我从网络应用程序收集的数据发送到谷歌电子表格。 我用的是Martin Hawksey的剧本: 我已经设置好了,并且按照手册中的说明做了所有的事情。我正在取回数据,但它显示为未定义的值: 这是我用来将JSON字符串发送到电子表格的代码:Javascript 通过AJAX请求提交时显示未定义值的Google电子表格,javascript,jquery,ajax,google-sheets,Javascript,Jquery,Ajax,Google Sheets,我正试图将我从网络应用程序收集的数据发送到谷歌电子表格。 我用的是Martin Hawksey的剧本: 我已经设置好了,并且按照手册中的说明做了所有的事情。我正在取回数据,但它显示为未定义的值: 这是我用来将JSON字符串发送到电子表格的代码: function sendData(){ var url = 'https://script.google.com/macros/s/AKfycby3SUJvfEjdHWVoEON0L5hN4uXod8M4Jv1LAIWH3Ny16M
function sendData(){
var url = 'https://script.google.com/macros/s/AKfycby3SUJvfEjdHWVoEON0L5hN4uXod8M4Jv1LAIWH3Ny16MIUz9o/exec';
var data = JSON.stringify(member);
$.ajax({
url: url,
type: 'GET',
dataType: 'json',
data: data,
success: function (response) {
console.log("succes! I sent this: " + data);
console.log("got this back: " + JSON.stringify(response));
},
});
}
这给了我一个成功的信息,它甚至告诉我它放在哪一行。
这是我要发送的JSON字符串:
{"Voornaam":"Name","Achternaam":"Name","Mail":"x@x.com","Verjaardag":"0/0/0000","Foto":"https://graph.facebook.com/xxxxx/picture?width=1020","School":"School X","Richting":"Course X"}
我甚至在线用JSON解析器检查了这个JSON,它没有返回任何错误
首先,我不完全确定如何检查电子表格中接收到的字符串。如果它到达时仍然正确。我试着把它记录下来,但似乎没有从谷歌的记录者那里得到任何回应
如果有人能指出我做错了什么,你将不胜感激 Web脚本需要一个JSON对象。但是,Ajax调用是使用stringify函数使用字符串进行的
var data = JSON.stringify(member);
修改脚本以使用JSON对象进行GET调用就解决了这个问题,如下所示
var data = member;
在将JSON发送到web脚本之前,先对其进行字符串化。但是web脚本需要一个JSON对象,因此无法检索数据。我会删除stringify函数并按原样发送JSON。这就完成了,现在可以完美地工作了。谢谢@毒蛇梦