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

HTML表单提交后无法发邮件及jQuery加载错误求助

问题根源及解决方案

核心问题:jQuery未正确加载

你的两个控制台错误是连锁触发的:

  • Mixed Content错误:当前页面通过HTTPS协议加载,但引入的jQuery脚本用了HTTP协议(http://ajax.aspnetcdn.com/ajax/jQuery/jquery-1.12.0.min.js)。现代浏览器会拦截HTTPS页面中的HTTP资源请求,导致jQuery完全加载失败。
  • $ is not defined错误:因为jQuery没加载成功,所有依赖$(jQuery别名)的代码(比如$(document).ready块里的表单提交逻辑)无法执行,这就是点击submit按钮无反应的直接原因。

修复步骤

1. 修复jQuery引入方式

把jQuery的引入链接改成HTTPS协议,或者用协议相对路径(自动适配当前页面的HTTP/HTTPS):

<!-- 方案1:改用HTTPS链接 -->
<script src="https://ajax.aspnetcdn.com/ajax/jQuery/jquery-1.12.0.min.js"></script>
<!-- 方案2:协议相对路径 -->
<script src="//ajax.aspnetcdn.com/ajax/jQuery/jquery-1.12.0.min.js"></script>

务必把这段脚本引入代码放在你的自定义JavaScript代码之前,保证jQuery先加载完成。

2. 验证前端逻辑执行

修复jQuery加载问题后,刷新页面,查看控制台是否还有$ is not defined错误。如果错误消失,再测试submit按钮:

  • 若点击仍无反应,检查自定义JS中表单提交的绑定逻辑是否正确,比如是否正确监听了表单的submit事件,是否存在阻止默认提交后未执行异步请求的情况。
  • 可以在$(document).ready块开头加测试代码,确认jQuery正常运行:
$(document).ready(function() {
    console.log("jQuery加载正常");
    // 你的表单提交逻辑...
});

3. 后端PHP脚本排查(前端修复后仍无法发邮件)

如果前端能正常触发提交请求,但邮件未发送,检查mail.php的以下几点:

  • 服务器是否配置了邮件发送功能(比如PHP的mail()函数是否可用,或是否使用了SMTP类库)。
  • 表单字段的name属性是否和PHP接收的参数一致,比如PHP用$_POST['email'],对应表单input必须有name="email"。
  • 在mail.php开头开启错误提示,排查脚本错误:
error_reporting(E_ALL);
ini_set('display_errors', 1);

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.30 12:23:19