我尝试让表单在每次单击“Submit Query”按钮时向我发送一封电子邮件。单击按钮后,表单将被验证并将用户带到确认页面,但我没有收到电子邮件。
表格代码:
$(document).ready(function() {
$('#sumbit').click(function() {
$('#contactform').attr('action',
'mailto:chinochinako@gmail.com?subject=Jeannette Chambliss Digital Portfolio' +
$('#name').val() + '&body=' + $('#email').val() + '&body=' + $('#comments').val() + '&body=');
$('#contactform').submit();
});
});
<html>
<head>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js"></script>
<script src="http://malsup.github.io/min/jquery.cycle2.min.js"></script>
</head>
<body>
<form onSubmit="MM_validateForm('name','','R','comments','','R');return document.MM_returnValue" id="contactform">
<label for="name">Full Name:
<input name="name" type="text" id="name" required="required"></label><br /><br />
<label for="email">Email:
<input name="email" type="email" id="email" required="required"></label><br /><br />
<label for="comments">Comments:
<textarea name="comments" id="comments" required></textarea></label><br /><br />
<input name="submit" type="submit" id="submit" formaction="confirmation.html" formmethod="POST" formtarget="_self" action="mailto:chinochinako@gmail.com">
</form>
<script src="js/form.js"></script>
</body>
</html>
3条答案
按热度按时间jq6vz3qz1#
tjvv9vkg2#
gpfsuwkq3#
欢迎来到斯塔克奥弗福。
我怀疑您缺少
.preventDefault()
,无法阻止单击事件继续。请注意,如果用户跳过按钮,点击Enter,此代码将不会执行。您可能需要考虑将验证代码移到jQuery的
submit
事件中,并将此代码也移到那里。我注意到一个潜在的错别字:
$('#sumbit').click(function() {
您的意思是:
$('#submit').click(function() {
更新
此外,这不会“发送”电子邮件。它只会要求默认的电子邮件程序编写一个用户可以发送的消息。如果你想通过SMTP发送提交的数据,这必须由服务器端脚本(ASP/ASP.NET,PHP,ColdFusion,Perl,Python...)通过表单处理程序完成。
x一个一个一个一个x一个一个二个一个x一个一个三个一个