Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/463.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/242.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 提交表格后如何留在页面上_Javascript_Php_Html_Ajax_Forms - Fatal编程技术网

Javascript 提交表格后如何留在页面上

Javascript 提交表格后如何留在页面上,javascript,php,html,ajax,forms,Javascript,Php,Html,Ajax,Forms,我已经找了好几天,试图找到我的具体问题的答案,但我无法这样做。请帮忙 我在我的网站上有一个表单,一旦点击,应该会发送一封电子邮件。我希望在保持在同一页面上并将div从表单更改为图像的同时执行此操作 这是我从互联网上找到的代码 请尽可能以巴尼风格提供建议。 提前向任何能够提供帮助的人表示感谢 jQuery(文档).ready(函数(){ jQuery('.contact').submit(函数(){ $.ajax({ 类型:“POST”, url:“联系表单处理程序.php”, 数据:dataS

我已经找了好几天,试图找到我的具体问题的答案,但我无法这样做。请帮忙

我在我的网站上有一个表单,一旦点击,应该会发送一封电子邮件。我希望在保持在同一页面上并将div从表单更改为图像的同时执行此操作

这是我从互联网上找到的代码

请尽可能以巴尼风格提供建议。
提前向任何能够提供帮助的人表示感谢

jQuery(文档).ready(函数(){
jQuery('.contact').submit(函数(){
$.ajax({
类型:“POST”,
url:“联系表单处理程序.php”,
数据:dataString,
成功:函数(){
$(“#联系方式”).html(“”);
$('#message').html(“”)
.append(“我们将很快联系。

”) .hide(); }); } }); 返回false; });


如果我理解您的问题,您需要在调用AJAX时使用
preventDefault()
,以防止提交(默认情况下),因此您可以执行以下操作:

jQuery(document).ready(function(){
    jQuery('.contact').submit( function($e) {

        $e.preventDefault();
        $.ajax({
            type: "POST",
            url: "contact-form-handler.php",
            data: dataString,
            success: function() {
                $('#contact_form').html("<div id='message'></div>");
                $('#message').html("<img src='thankyou.jpg' style='width:100%'/>")
                .append("<p>We will be in touch soon.</p>")
                .hide();
            });
        }
    });
    return false;

});
jQuery(文档).ready(函数(){
jQuery('.contact').submit(函数($e){
$e.preventDefault();
$.ajax({
类型:“POST”,
url:“联系表单处理程序.php”,
数据:dataString,
成功:函数(){
$(“#联系方式”).html(“”);
$('#message').html(“”)
.append(“我们将很快联系。

”) .hide(); }); } }); 返回false; });

了解有关MDN的更多信息,以及有关MDN的更多信息。

您可以将事件处理程序附加到“提交”按钮,并将“提交”按钮更改为简单按钮,以便在单击表单时它不会提交表单。按钮代码可以更改为:

<input type="button" name="submit" class="button w3-section w3-black w3-ripple" id="submit_btn" value="Send" />
jQuery('#submit_btn').submit( function() {

};
的默认行为是在提交时将用户重定向到URL。取自
操作
属性的URL

为了防止这种重定向,您必须告诉浏览器:“不要重定向”

Short:
e.preventDefault()


Long:在提交回调函数中,函数接受一个参数。简单地把它命名为:
e
。这是一个对象,它有一个函数
preventDefault
。此函数可防止默认行为:重定向。在回调函数的第一行执行此调用。

可能
event.preventDefault()
会对您有所帮助吗?请不要用“下午好”之类的词。因为在这里,来自不同时区的人在场,对我来说,现在是午夜1:17@SagarV同意。在我的时区,现在几乎是晚上11点,在
onsubmit
事件上调用
returnfalse
应该可以做到这一点,但我从未用jQuery尝试过。