我有一个使用Google Apps Mail生成电子邮件的表单,我真正要做的就是在按下提交后不要进入不同的页面,尽管我希望它仍能生成电子邮件。
任何想法最好的方法是什么?我现在学习jQuery,所以解决方案非常受欢迎。
<form class="flex-form" id="gform" method="POST" action="https://script.google.com/macros/..../exec" onsubmit="return confirm('Do you really want to submit the form?');">
<input id="formName" type="text" placeholder="Full Name" name="name" value="" required autocomplete="off">
<br>
<input id="formNumber" type="tel" pattern="[0-9]*" placeholder="(0034) 606248059" name="phone-number" required autocomplete="off">
<br>
<input id="formGeo" type="text" placeholder="Tap to share location" name="coordinates" required autocomplete="off">
<br>
<input type="submit" name="submit" value="Send Us Request">
</form>
感谢。
答案 0 :(得分:1)
您可以拦截表单&#34;提交&#34;使用Javascript进行活动。
$('gform').on('submit', function(event){
event.preventDefault();
if ( ! confirm('Do you really want to submit the form?'))
return false;
// ....
});
这将抓住&#34;提交&#34;事件并阻止事件的默认操作,即将表单POST到action
属性中给出的URL。从表单中删除onsubmit
属性,在一个位置更好地处理它。
接下来,您需要自己发送数据。最简单的方法是使用jQuery的$.post()
或$.ajax()
函数以及$('gform').serialize()
将表单的数据字段转换为字符串,准备发布。