2017-12-18 3 views
0

に動作していないとして、私は連想配列Jsの標準オブジェクト(キーとして文字列を持つアレイ)Ajaxのポストデータが

var order = []; 
order['id'] = 1266; 
order['customer'] = []; 
order['customer']["firstName"] = "John"; 
order['customer']["lastName"] = "Doe"; 
order['customer']["age"] = 46; 

を持って、私は私のAJAX呼び出し

$.ajax({ 
    url : 'http:example.com', 
    method : 'post', 
    dataType : 'json', 
    data : order, 
    success : function() { 
    } 
}) 
へのデータとして、この配列を送りたいです

Ajaxが私のURLを正しく呼び出していますが、空のデータを送信しています。 { '注文':順序}

  • データ:{ '注文':JSON.stringify(順序)}
  • Iは

    1. JSON.stringify(順序)
    2. データを試みました

      しかしこれらのどれも動作していません。

    +5

    を使用してください。 – epascarello

    +0

    [非整数プロパティを持つ配列を使用しない](https://andrewdupont.net/2006/05/18/javascript-associative-arrays-考えられている - 有害な/)! – Bergi

    +0

    https://andrewdupont.net/2006/05/18/javascript-associative-arrays-considered-harmful/記事をよく読んでいただきありがとうございます。これはなぜ私たちが連想配列を使用すべきではないかを私に明確に説明するものです。 –

    答えて

    3

    オブジェクトを配列に変更するだけで済みます。 var order = [];の代わりにvar order = {};

    +0

    彼はこのためにもオブジェクトを使うべきです: 'order ['customer'] = {};' –

    +0

    yeh、私はそれを得ました。ありがとう –

    関連する問題