Javascript js删除提交的表单数据

Javascript js删除提交的表单数据,javascript,php,jquery,json,forms,Javascript,Php,Jquery,Json,Forms,问题是: Javascript函数(由模板预先制作)清理php发送给我的表单数据 php代码: <?php header('Content-type: application/json'); $status = array( 'type'=>'success', 'message'=>'GJ ' ); $name = @trim(stripslashes($_POST['name'])); $phone

问题是: Javascript函数(由模板预先制作)清理php发送给我的表单数据

php代码:

<?php
    header('Content-type: application/json');
    $status = array(
        'type'=>'success',
        'message'=>'GJ '
    );

    $name = @trim(stripslashes($_POST['name'])); 
    $phone = @trim(stripslashes($_POST['phone'])); 
    $subject = @trim(stripslashes($_POST['subject'])); 
    $message = @trim(stripslashes($_POST['message'])); 

    $email_to = 'email@email.com';//replace with your email

    $body = 'Name: ' . $name . "\n\n" . 'Телефон: ' . $phone . "\n\n" . 'Subject: ' . $subject . "\n\n" . 'Message: ' . $message;

    $success = @mail($email_to, $subject, $body);

    echo json_encode($status);
    die;
当没有js代码时,php返回带有一行的白色屏幕,但@mail发送正常消息,但当有此代码时,淡入淡出工作正常,但数据到达时为空。message and name中的消息是cyrylic,如果这很重要的话

请帮助我修复它(即,我需要数据到达和成功淡入显示,或者至少数据到达时没有.php白色屏幕),或者只是解释js代码做什么,我不明白。
谢谢

您没有为
$提供
数据
参数。post

试一试

参考资料:


那么您的问题是Javascript?在您的php代码上执行
var\u dump($\u POST)
,然后检查浏览器的网络响应选项卡返回的内容。是的,没有Javascript=发送的数据Javascript=数据到达时为空。非常感谢!$var之前的var停止脚本工作,但没有理由添加
var
会停止脚本。如果不使用
var
或询问各种问题,就不应该声明变量可能是因为“使用严格”可能是原因,就我所查到的老式编程而言,它允许不使用var,但不应该禁止,不管怎样,没有var的func工作正常,而var不工作。啊,这是因为
使用严格的
后有逗号,试试
使用浏览器控制台检查错误。可能在那里抛出语法错误
var form = $('.contact-form');
form.submit(function () {'use strict',
    $this = $(this);
    $.post($(this).attr('action'), function(data) {
        $this.prev().text(data.message).fadeIn().delay(3000).fadeOut();
    },'json');
    return false;
});
var form = $('.contact-form');
form.submit(function () {'use strict',
    var $this = $(this);    
    $.post($(this).attr('action'), $this.serialize(), function(data) {
        $this.prev().text(data.message).fadeIn().delay(3000).fadeOut();
    },'json');
    return false;
});