使用ajax发送数据时,为什么使用stringify时json数据为空?

时间:2013-10-17 08:34:48

标签: php jquery ajax json stringify

当我使用JSON.stringify时,由于某种原因无法发送其中的数据。但是当我删除JSON.stringify时,它会发送,我想知道为什么?有没有办法在不使用stringify的情况下控制PHP文件中的json数据?非常感谢任何帮助!

$(document).ready(function(){

    $.ajax({
        dataType: "jsonp",
        url: "***/server/jsonp/data",
        callback:"test",
        success: jsonSuccess
    });


    function jsonSuccess( data ){


        for( var i = 0; i < data.length; i++ ){

            if ( i == 0 ) {

                var formData = {name:"tolga",age:"25"}; // test object 

                $.ajax({
                    type: "POST",
                    url: "wp-content/themes/flex/saveJsonInfo.php",
                    data: { info: JSON.stringify(data[i]) }
                }).done(function(data2) {

                    console.log(data2);

                });
            }
        }
    }
});

我收到的json数据是这样的:

test([{"EniNumber":"22325326","Name":"Test Fi","StartDate":"\/Date(1381788000000)\/","Rows":[{"T":42878,"Y":51.880965,"X":4.395925,"D":14.56},{"T":42879,"Y":51.880967,"X":4.395925,"D":14.56},{"T":42880,"Y":51.880967,"X":4.395925,"D":14.59}]}, {"EniNumber":"12312312","Name":"Test Fi 2","StartDate":"\/Date(13817880021300)\/","Rows":[{"T":42878,"Y":51.880965,"X":4.395925,"D":14.56},{"T":42879,"Y":51.880967,"X":4.395925,"D":14.56},{"T":42880,"Y":51.880967,"X":4.395925,"D":14.59}]}])

这是我的PHP示例文件的外观:

$json_data = $_POST['info'];

if( isset($json_data) ){
    echo json_encode( $json_data );
} else {
    echo json_encode( "What happened?" );
}

0 个答案:

没有答案