javascript - html 表单不将数据传输到谷歌电子表格

标签 javascript jquery html excel forms

嗨,我一直在关注本教程 submit data from html forms to google sheets ajax代码如下:

var $form = $('form#test-form'),
  url = 

'https://script.google.com/macros/s/AKfycbwoNkRscUxkp7bOdHx3pPwj4D2doLATbgqEYKOoaIRFXCdRPlM/exec '

$('#submit-form').on('click', function(e) {
  e.preventDefault();
  var jqxhr = $.ajax({
  url: url,
  method: "GET",
  dataType: "json",
  data: $form.serializeObject()
  }).success(
// do something
    );
  })

我遇到的问题是数据没有传输到谷歌电子表格。下面是html代码。

<form id="test-form">

<div>
  <label>Field 1</label>
  <input type="text" name="Groceries" placeholder="Field 1"/>
 </div>

 <div>
   <label>Field 2</label>
   <input type="text" name="Diary" placeholder="Field 2"/>
 </div>

  <div>
    <label>Field 3</label>
    <input type="text" name="Meat" placeholder="Field 3"/>
  </div>

<div>
  <label>Field 4</label>
  <input type="text" name="Fish" placeholder="Field 4"/>
</div>

<div>
  <button type="submit"id="submit-form">Submit</button>
</div>

最佳答案

您在控制台中收到 CORS 错误吗?

has been blocked by CORS policy: No 'Access-Control-Allow-Origin' header is present on the requested resource.

如果是这样,我通过将数据类型从“json”更改为“jsonp”来使其工作。另外,AJAX 请求的成功部分应该位于对象内部。

$('#submit-form').on('click', function(e) {
  e.preventDefault();
  var jqxhr = $.ajax({
    url: url,
    method: "GET",
    dataType: "jsonp",
    data: $form.serializeObject(),
    success: function() {
      console.log('it worked')
    }
  })
})

关于javascript - html 表单不将数据传输到谷歌电子表格,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47930230/

相关文章:

html - html 旁边不需要的白色区域

javascript - 如何创建内容平滑过渡

javascript - 是否可以从批处理文件(命令提示符)使用 uglifyjs?如果是这样,怎么办?

javascript - 查找 JavaScript 数组中最大值的键

javascript - 如果我们只知道元素的 ID,如何检查元素是什么?

Javascript 注入(inject) PDF,与网站通信

html - 删除列表左侧的空格 <li>

javascript - 如何优化在 canvas JS 上绘制大量元素?

javascript - AngularJS 复选框没有被选中

javascript - 尝试将字符串数据转换为数值数据,将数据放入数组数组(Json)中