Javascript 表单ajax php不能使用动作为空的数据序列化

Javascript 表单ajax php不能使用动作为空的数据序列化,javascript,php,ajax,forms,Javascript,Php,Ajax,Forms,这个表单最初是在action表单中使用process.php操作的,它工作得非常好 但是当我想在同一个页面中使用空操作时,ajax不起作用(php不接收来自ajax表单的数据) 当我改变的时候。data:form.serialize(),到data:request, form.serialize(), 表单工作,php从ajax接收数据,但我有一个问题,表单刷新页面 Ajax源代码 <script> //if form is valid else {

这个表单最初是在action表单中使用process.php操作的,它工作得非常好

但是当我想在同一个页面中使用空操作时,ajax不起作用(php不接收来自ajax表单的数据)

当我改变的时候。data:form.serialize(),到data:request, form.serialize(), 表单工作,php从ajax接收数据,但我有一个问题,表单刷新页面

Ajax源代码

<script>
//if form is valid
        else {
            loading.show();
            $.ajax({
                url: form.attr('action'),
                type: form.attr('method'),
                data: form.serialize(),
                success: function(){
                    showNotice('success');
                    form.get(0).reset();
                    loading.hide();
                }
            });
        }

        return false; //this stops submission off the form and also stops browsers showing default error messages

    });
</script>

//如果表格有效
否则{
loading.show();
$.ajax({
url:form.attr('action'),
类型:form.attr('method'),
数据:form.serialize(),
成功:函数(){
展示通知(“成功”);
form.get(0.reset();
loading.hide();
}
});
}
返回false//这将停止提交表单,并停止浏览器显示默认错误消息
});
Html表单

 <form method="post" action="" class="mailform">




                  <button name="submit" type="submit" class="zbtn">Sumbit Message</button>

            </form>

萨姆比特消息
Php代码

<?php
if (isset($_POST['submit'])) 
{ 
    //Here syntax for the form 

    //if this is not an ajax request
    if(empty($_SERVER['HTTP_X_REQUESTED_WITH']) && strtolower($_SERVER['HTTP_X_REQUESTED_WITH']) !== 'xmlhttprequest'){
        //set session variables
        session_start();
        $_SESSION['cf_returndata'] = $returndata;


    }
}
?>

?因为我可以通过ajax运行此表单而不刷新页面

注意:这是process.php的原始形式(演示):

表单中没有可序列化的内容。什么是表单变量?您是否已将表单变量定义为var form=$('form')Hi here://设置全局变量并缓存DOM元素以供以后重用var form=$('contact form')。find('form')、formElements=form.find('input[type!=“submit”]、formSubmitButton=form.find('type=“submit”')、errorNotice=$('errors')、successNotice=$('successNotice')、'success'),loading=$('#loading'),errorMessages={required:'是必填字段',email:'您没有为字段输入有效的电子邮件地址:',minlength:'必须大于'}。源comple javascript是:表单中没有要序列化的内容。表单变量是什么?您是否已将表单变量定义为var form=$('form')Hi here://设置全局变量并缓存DOM元素以供以后重用var form=$('contact form')。find('form')、formElements=form.find('input[type!=“submit”]、formSubmitButton=form.find('type=“submit”')、errorNotice=$('errors')、successNotice=$('successNotice')、'success'),loading=$('#loading'),errorMessages={required:'是必填字段',email:'您没有为字段输入有效的电子邮件地址:',minlength:'必须大于'}。源复杂javascript是:
<?php
if (isset($_POST['submit'])) 
{ 
    //Here syntax for the form 

    //if this is not an ajax request
    if(empty($_SERVER['HTTP_X_REQUESTED_WITH']) && strtolower($_SERVER['HTTP_X_REQUESTED_WITH']) !== 'xmlhttprequest'){
        //set session variables
        session_start();
        $_SESSION['cf_returndata'] = $returndata;


    }
}
?>