我试图发送电子邮件时,一个html按钮被击中。我希望电子邮件只是在后台发送,而不影响html页面视图在所有。这是我现在正在尝试的
形式<form action="" class="collapsed nav-form" data-parsley-validate="" id="nav_waitlist_form" method="post">
<div class="form-group" id="nav_email_group">
<label class="sr-only" for="join_waitlist_email">Email address</label>
<input class="form-control input-lg waitlist-email"data-parsley-error-message="!" data-parsley-required="true" data-parsley-trigger="change" data-parsley-type="email" id="nav_email_input" name="email" placeholder= "Enter email address" type="email">
</div><button class="btn btn-lg btn-default nav-button" id="nav_waitlist_button" type="submit">Get In Touch With us</button>
</form>
<script type="text/jquery">
$('#nav_waitlist_button').live('click', function() {
$.get('sendmail.php?functionName=test&inputvar=something');
return false;
});
</script>
PHP: if ($_REQUEST['functionName'] == 'test') {
mail('asbreckenridge@me.com', 'Some subject', 'somebody')
}
我想知道你为什么不使用表单!如果你想要的只是一个按钮,你可以使用button
,你不需要添加没有任何form
元素的整个表单。
您可能想要捕获发送到服务器的数据,以便您可以发送该数据。还有一些修改:
JS -如果你使用的是现代版本的jQuery:
$(function() {
$(document).on('click', '#nav_waitlist_button', function() {
$.get('sendmail.php?functionName=test&inputvar=something');
return false;
});
});
PHP -不遗漏semi-colon
:
if ($_REQUEST['functionName'] == 'test') {
mail('asbreckenridge@me.com', 'Some subject', 'somebody');
}