如何使用gas将多个html(webflow)表单数据输入google表单?

a11xaf1n  于 2021-09-23  发布在  Java
关注(0)|答案(0)|浏览(232)

我一直在使用这些代码将webflow表单中的数据输入到google表单中。现在的挑战是让数据来自同一个网站的另一个表单。
这是嵌入在webflow网站构建中的脚本:

<script>
const scriptURL = 'https://script.google.com/macros/s/AKfycbz5X-0FqrOgghfGyvhxbcl9D9CKZU0YWmGjxM6PzuTExBiB-ABoioImHEqx-NrrB73tXA/exec'
const form = document.forms['wf-form-Contato-Form']
const from2 = document.forms['secondForm'] //I suppose that this would begin like this...
  form.addEventListener('submit', e => {
    e.preventDefault();
    fetch(
      scriptURL, 
      { method: 'POST', body: new FormData(form), mode: 'no-cors'}
    )
      .then(response => console.log('Success!', response))
      .catch(error => console.error('Error!', error.message))
form.reset();  
})
</script>

这是谷歌应用程序脚本环境中的一部分:

var sheetName = 'Leads'
var sheetName2 = 'Registrations'//this'd redirect the data to this other sheet
var scriptProp = PropertiesService.getScriptProperties()

function intialSetup() {
  var activeSpreadsheet = SpreadsheetApp.getActiveSpreadsheet()
  scriptProp.setProperty('key', activeSpreadsheet.getId())
}

function doPost(e) {
  var lock = LockService.getScriptLock()
  lock.tryLock(10000)

  try {
    var doc = SpreadsheetApp.openById(scriptProp.getProperty('key'))
    var sheet = doc.getSheetByName(sheetName)

    var headers = sheet.getRange(1, 1, 1, sheet.getLastColumn()).getValues()[0]
    var nextRow = sheet.getLastRow() + 1

    var newRow = headers.map(function (header) {
      return header === 'Data' ? new Date() : e.parameter[header]
      });

    sheet.getRange(nextRow, 1, 1, newRow.length).setValues([newRow]);
    return ContentService
      .createTextOutput(JSON.stringify({ 'result': 'success', 'row': nextRow }))
      .setMimeType(ContentService.MimeType.JSON)
  }
  catch (e) {
    return ContentService
      .createTextOutput(JSON.stringify({ 'result': 'error', 'error': e }))
      .setMimeType(ContentService.MimeType.JSON)
  }
  finally {
    lock.releaseLock()
  }
}

我只有几个假设,但经过一些研究,我还没有发现任何东西可以帮助我在我得到的工作版本的基础上进行构建。
欣赏任何对原因的理解。

暂无答案!

目前还没有任何答案,快来回答吧!

相关问题