使用弹出窗口提交表单的HTML按钮

时间:2018-05-17 08:37:56

标签: html button

我有这个代码提交表单并发送邮件,它打开一个不同的页面说成功:

<input type="submit" value="submit">

然后我也有这个代码,这是一个性感的按钮,弹出邮件已发送的消息(即使它还没有):

<a href="submit-message.html" class="nicdark_marginbottom20_iphoneland nicdark_marginbottom20_iphonepotr nicdark_mpopup_ajax nicdark_outline white nicdark_btn nicdark_bg_bluedark medium title">Submit</a>

如何组合代码,以便邮件通过性感按钮发送,我获得弹出窗口,而不是登陆新页面?

1 个答案:

答案 0 :(得分:0)

我建议使用ajax确认电子邮件发送,然后弹出所谓的性感按钮。

<form method="POST" action="/your/path/to/php/file">
    <input type="submit" value="submit" onclick="someFunction();">
</form>

<a id="href_id" href="submit-message.html" class="nicdark_marginbottom20_iphoneland nicdark_marginbottom20_iphonepotr nicdark_mpopup_ajax nicdark_outline white nicdark_btn nicdark_bg_bluedark medium title">Submit</a>


<script type="application/javascript">
    function someFunction() {
        $.ajax({
            type: 'POST',
            url: 'route/to/php/file',
            data: {
                // data goes here
            },
            cache: false,
            headers: {
                // headers(if any) fo here
            },
            success: function(){
                $('#href_id').show();
            }
        });
    }
</script>

php文件可能如下所示:

if(mail ($to, $subject, $message, $additional_headers = null, $additional_parameters = null)) {
  return true;
}

现在,显然这不是一个完整的代码,不应该这样,这是指向正确的方向。

我在这里使用jQuery只是因为我对它更熟悉,但所有这一切都可以在纯javascript中完成,如果你不这样做,就没有真正需要使用jQuery。我想。

详细了解ajaxPHP and Ajax

作为最后一点,逻辑就是这样:

  • 在前端进行ajax调用

  • 使用PHP(或您选择的语言)在后端发送电子邮件

  • 返回确认电子邮件是否已发送的回复

  • 根据该响应显示弹出