2016-05-03 6 views
0

私はコーディングしているページのJSONデータを取得するためにjQueryを使用しています。 DT_RowIdをキーとして追加し、idと同じに設定する必要があります。ここでgetJSONレスポンスに情報を追加する方法

は私が持っているものだ。私はそれが正しいだと仮定すると、.pushを使用しようとしています

[{"reason":"Clean\/Check","id":"294","recall_date":"2016-04-14","appt_reason_id":"28","datetime":"2016-04-29 15:25:11"},{"reason":null,"id":"290","recall_date":"2016-04-13","appt_reason_id":null,"datetime":"2016-04-29 12:57:05"}] 

var recalls = []; 

$.getJSON('ajax_datatables_get_json.php?what=contact_recalls', function(data) { 

    $.each(data, function(index) { 
     recalls.push({DT_RowId: data[index].id}); 
    }); 

}); 

console.log(recalls); 

ここに私のJSONがどのように見えるかのサンプルです。今、アレイのコンソールに何も表示されません。空っぽです。 JSONページが正しく読み込まれ、応答が表示されます。

[{"reason":"Clean\/Check","id":"294","recall_date":"2016-04-14","appt_reason_id":"28","datetime":"2016-04-29 15:25:11", "DT_RowId": "294"}, 
... ... 

何かアドバイス:私はこのような何かを得るでしょうので

は基本的に私はDT_RowIDと呼ばれる別のフィールドとして各JSONに戻しIDをプッシュしたいですか?

答えて

1

これを試してみてください:

$.each(data, function(index, obj) { 
    obj.DT_RowId = obj.id; 
    recalls.push(obj); 
}); 
+0

私が使用している場合は、私はまだ私のコンソールに表示[]もらうことを行うと:はconsole.logは(リコール)。それは私がChrome Developer Toolsからのサーバーレスポンスをまだ確認していれば、ajaxページの読み込みとJSONレスポンスがそのページに表示されることが分かります。だから私はJSONデータがあることを知っている! –

+0

私は(いくつかの最小限のHTMLと一緒に)ページにこれを入れて、それをロード: ' ' 正常に動作します - 私は2つのオブジェクトの配列を期待通りに与えます。 – theharls

+0

これは私が気づいたところです。私は、サーバーを稼動している別のコンピューターを使用して、同じページを実行しました。オブジェクトがコンソールに表示されます。後でページをリフレッシュするか、後で戻っても、コンソールには何も記録されません。それは起こることができますか?そこに初めて。 –

関連する問題