You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Google Apps Script表单提交后重定向回自有网站?

解决GAS表单提交后跳转回原网站的简单方法

你的问题出在表单用POST方式提交时,触发的是GAS里的doPost方法,你加的doGet根本不会被调用,所以无效。下面给两种简单易懂的解决方法,适合HTML/CSS基础的你:

方法1:前端异步提交(推荐,页面不刷新)

不用修改GAS,只给页面加几行简单JS代码,提交时页面不会跳转,完成后自动返回原网站:

  1. 给你的表单加一个ID,比如:
<form id="contactForm">
  <!-- 你的表单输入框、提交按钮 -->
</form>
  1. 把表单原有的action和method属性删掉(或者保留也没关系,JS会阻止默认跳转)
  2. 在页面末尾添加这段JS代码(替换里面的两个地址):
<script>
document.getElementById('contactForm').addEventListener('submit', function(e) {
  // 阻止表单默认跳转行为
  e.preventDefault();
  // 收集表单里的所有数据
  const formData = new FormData(this);
  // 异步提交到你的GAS地址
  fetch('你的GAS部署地址', {
    method: 'POST',
    body: formData
  })
  .then(() => {
    // 提交成功的提示(可选,也可以删掉这行)
    alert('提交成功!');
    // 跳回你的网站页面,比如联系页或首页
    window.location.href = '你的网站返回地址';
  })
  .catch(() => {
    alert('提交失败,请重试');
  });
});
</script>

方法2:修改GAS返回跳转页面(不用改前端)

直接修改GAS的doPost方法,让它提交完成后返回一个自动跳转的HTML页面:
把你原来doPost里的return ContentService...部分全部替换成下面的代码(替换返回地址):

// 提交成功时返回跳转页面
return HtmlService.createHtmlOutput(`
  <script>
    alert('提交成功!');
    // 替换成你的网站返回地址
    window.location.href = '你的网站返回地址';
  </script>
`);

同时把catch块里的返回也改成类似的:

return HtmlService.createHtmlOutput(`
  <script>
    alert('提交失败:${e.message}');
    window.location.href = '你的网站返回地址';
  </script>
`);

内容的提问来源于stack exchange,提问作者Daniel Huddleston

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.16 02:52:26