0
{
   "data": [
      {
         "date": "2013-03-07",
         "id": "2",
         "vt_color": "#548dd4",
         "vt_name": "follow up",
         "duration": "20",
         "time_booked": "12:00:00",
         "stats": "booked",
         "doctor_id": "00002",
         "patient_id": "00003"
      },
      {
         "date": "2013-03-08",
         "id": "3",
         "vt_color": "#76923c",
         "vt_name": "ultrasound",
         "duration": "30",
         "time_booked": "08:00:00",
         "stats": "booked",
         "pt_name": "demo patien",
         "dr_name": "Momen Alzalabany",
         "doctor_id": "00002",
         "patient_id": "00009"
      }
   ] 
}

私が欲しいのは、vt_name、vt_color、およびデータのインデックスを含む、これから別の配列を作成することです。そのため、jquery を使用します

var words = [];

$.each(arr['data'],function(ref){
    words[this.doctor_id].push({name: this.vt_color,color: this.vt_name,index:ref});
});
console.log(koko);

FAIL : words[this.do_id] が定義されていません....

これどうやってするの ?結果であってほしい

申し訳ありませんが、私はjson/jsの初心者です

私はphpで結果が欲しい

['00002'=>[
            ['name'=>'follow up','color'=>'#548dd4',index=>[0,3,4]],
            ['name'=>'ultrasound','color'=>'#769dd4',index=>[1,5,8]]
          ]
 ]
4

1 に答える 1

0
  1. キーとして文字列 (例: '00002') を持つマップが必要なため、単語のタイプをオブジェクト (配列ではなく) に変更します。

    var words = {};
    
  2. 存在しない配列に追加したい。最初に作成する必要があります。

    words[this.doctor_id] = words[this.doctor_id] || []; // creates an array if not already existing
    words[this.doctor_id].push({name: this.vt_color,color: this.vt_name,index:ref});
    
于 2013-03-06T14:40:56.893 に答える