我使用EmailJS(emailjs.com)进行表单提交,虽然我能够正确发送它,但实际上,当我使用reset()方法时它会停止发送。这是我的代码:重置提交的HTML表单
<div class="topForm">
<form id="myform" onsubmit="emailjs.sendForm('mailjet', 'city_request', this); return false;" method="post">
<div class="form-group">
<input type="email" class="email" id="userEmail" placeholder="Enter email" name="userEmail">
<button type="submit" id="userEmailButton" class="btn btn-primary">Sign up</button>
</div>
</form>
</div>
以上,我可以在EmailJS的日志部分查看提交的信息。我的问题是当我这样做:
<form id="myform" onsubmit="emailjs.sendForm('mailjet', 'city_request', this).reset(); return false;" method="post">
添加.reset段()将清除出在提交表单,但不会将其发送到EmailJS。此外,我试图在一个文件中使用JavaScript,如下所示:
function myFunction() {
var form = document.getElementById('myform');
form.reset();
}
但是显然它也不起作用。有谁知道发生了什么事?我一直试图让表单与reset()方法同时工作,但没有运气。
您是否尝试过使用'.then()'仅在成功提交表单后才应用复位:http://www.emailjs.com/docs/api-reference/emailjs-send/ –
哇。感谢您注意到这一点,我彻底检查了一下,希望我早日注意到它。我得到它与你的建议工作,所以再次感谢! – mur7ay
@RobertC你想提交一个答案,所以我可以接受它作为正确的解决方案? – mur7ay