2

私はこの JavaScript ソースを持っています:

var mydata = [];

$('.myManyElements').each(function() {
    mydata.push({
        'id': $(this).data('id'),
        'quantity': $(this).data('quantity'),
        'price': $(this).data('price'),
        'price_total': Order.getTotalPrice()
    });
});

$.post('/archive', mydata, function(data) {
    if(data.success) {
        alert(data.response);
    } else {
        alert('Custom Error Report!');
    }
}, 'json');

そして、私の/archiveリクエストには、このサンプル PHP があります。

echo json_encode(array(
    'success' => true,
    'response' => print_r($_POST, true),
));

Firebug の NET パネルで XHR を確認すると、[POST] タブに次のメッセージが表示されます。

undefined=

私の応答を取得すると、次のalertように出力されます。

Array
(
    [undefined] => 
)

POST リクエストでデータの配列を送信できないのはなぜですか?

4

1 に答える 1

1

試す

$.post('/archive', {'mydata': JSON.stringify(mydata)}, function(data)
于 2012-11-07T00:33:55.923 に答える