Javascript 未调用jQuery AJAX Post alert()

Javascript 未调用jQuery AJAX Post alert(),javascript,php,jquery,ajax,Javascript,Php,Jquery,Ajax,下面的代码不起作用。警报应显示,但不显示。“我的HTML表单”按钮具有属性onclick=“doPost()”,这是下面的函数: function doPost() { if ( allFieldsValid() ) { var data1 = $( '#data1' ).val(); var data2 = $( '#data2' ).val(); var data3 = $( '#data3' ).val(); var

下面的代码不起作用。警报应显示,但不显示。“我的HTML表单”按钮具有属性
onclick=“doPost()”
,这是下面的函数:

function doPost() {
    if ( allFieldsValid() ) {
        var data1 = $( '#data1' ).val();
        var data2 = $( '#data2' ).val();
        var data3 = $( '#data3' ).val();
        var data4 = $( '#data4' ).val();

        var data5 = localStorage.getItem( 'data5' );
        var data6 = localStorage.getItem( 'data6' );

        var post_data = { d1: data1, d2: data2, d3: data3, d4: data4, d5: data5, d6: data6 };

        //console.log( post_data ) always displays the data with no nulls.

        $( '#myForm' ).submit( function(e) ) {
            $.ajax({
                type: 'post',
                url: 'http://localhost/myphpfilelocation.php',
                data: post_data,
                cache: false,
                success: function( response ) {
                    alert( response );
                },
                error: function( response ) {
                    alert( response );
                }
            });
            e.preventDefault();
        }      
    } else {
        alert( 'Fields are not valid' );
    }
}
我的PHP代码使用
echo
显示它获取的数据:

<?php
    $data1 = $_POST[ 'd1' ];
    $data2 = $_POST[ 'd2' ];
    $data3 = $_POST[ 'd3' ];
    $data4 = $_POST[ 'd4' ];
    $data5 = $_POST[ 'd5' ];
    $data6 = $_POST[ 'd6' ];

    echo( $data1. ' '.$data2. ' '.$data3. ' '.$data3. ' '.$data4. ' '.$data5. ' '.$data6 );
?>

脚本中的
alert()
甚至没有显示


我所有的HTML表单输入都有正确的ID(即
('#data1')
等)。

必须使用
JSON.stringify()
方法

stringify函数将Javascript对象转换为JSON文本并 将其存储在字符串中

此外,contentType是您要发送的数据类型,因此
application/json

请试试这个:

$.ajax({
        type: 'post',
        url: 'http://localhost/myphpfilelocation.php',
        data: JSON.stringify(post_data),
        contentType:'application/json',
        cache: false,
        success: function( response ) {
            alert( response );
        },
        error: function( response ) {
            alert( response );
        }
});
php
文件中,必须使用
json\u decode
函数对
json
对象进行解码