我仍然是一名学生,今天我们的讲师告诉我们,为了提交联系我们表格而不必使用mailto:函数,唯一的方法是使用PHP。
我发誓,去年另一位讲师向我们展示了一种仅使用javascript的方法。
是否可以使用基本表单和javascript提交反馈/联系表格?如果是这样,您介意分享一个示例吗?
提前致谢
您可以使用JavaScript重定向到带有某些参数的mailto:
,但这并不理想。 另请记住,mailto:
URL 中电子邮件地址以外的任何内容都是非标准的。 虽然它适用于许多浏览器,但它不适用于所有浏览器。
的最佳方法是在服务器端使用PHP或其他方法
浏览器基于 HTML 创建/提交表单。JavaScript通常用于增强表单(以许多不同的方式)。基本表单将其数据作为 POST 请求发送。要对数据执行任何有用的操作,您需要服务器端代码来处理 POST 请求(例如 PHP)。
你不能向javascript提交表单并期望它做任何事情。您需要服务器端脚本才能接收要处理的表单。Mailto是一个特定于浏览器/操作系统的方法,不一定会调用任何东西。Javscript 可以在进入服务器进行进一步处理之前处理您的表单,但就像我说的,您需要提交给服务器。
Javascript在没有PHP或浏览器支持的情况下无法捕获任何内容。您需要服务器端脚本来接收表单并对其进行处理。没有PHP或其他服务器端脚本的Javascript无法捕获表单。
您可以使用
类似 emailjs.com 的服务:
1) 配置电子邮件JS:
<script type="text/javascript" src="https://cdn.emailjs.com/sdk/2.2.4/email.min.js"></script>
<script type="text/javascript">
(function(){
emailjs.init("user_USERID");
})();
</script>
2) 发送电子邮件:
var service_id = 'my_mandrill';
var template_id = 'feedback';
var template_params = {
name: 'John',
reply_email: 'john@doe.com',
message: 'This is awesome!'
};
emailjs.send(service_id,template_id,template_params);
它每月限制为 200 封免费电子邮件,这将适用于简历/投资组合网站。 支持验证码。
EmailJS支持不同的电子邮件提供商(包括自定义SMTP服务器),并为您提供日志和统计信息。