2016-04-13 7 views
0

のオブジェクトをループ:私はそうのように私はjQueryには、この配列を送信したjQueryのは、私はそれをプリントアウトしたときに、このようになりますPHPの配列持つPHPの配列

Array 
(
    [0] => Array 
     (
      [title] => Much title 
      [end] => Such end 
      [start] => Very start 
     ) 

    [1] => Array 
     (
      [title] => Much title 
      [end] => Such end 
      [start] => Very start 
     ) 

) 

を:

var orders = <?php echo json_encode($myArray); ?>; 

私がcosole.log(orders);をするとき、明らかに2つのオブジェクトが得られます。

出力:

enter image description here

今、私はそうのようにしようとした彼らの上にループにしたい:

jQuery.each(orders, function(key, value) { 
     console.log(key + ": " + value); 
}); 

これは私に私のコンソールでこの出力を与えている:

0: [object Object] 
1: [object Object] 

titleの代わりにstart d endすべてのオブジェクトの値。

誰でも私がこれをどのように修正できるか考えていますか?

ありがとうございます!

+0

など、使用 'にconsole.log(キー、値)のタイトルを印刷する必要があります;'代わり – RRK

+0

@RejithRKrishnanは、どのように私は 'title'、' start'と 'にアクセスすることができます終値? –

+0

[各文書](http://api.jquery.com/jquery.each/)それは 'index、value'です。キーではありません。 'value'の内容を得るためにさらにレベルをドリルダウンする必要があります – mjr

答えて

2

valueがオブジェクトであるため、オブジェクトのプロパティを反復するには、2番目のループが必要です。

jQuery.each(orders, function(key, value) { 
     jQuery.each(value, function(propertyName, propertyValue){ 
      console.log(propertyName + ": " + propertyValue); 
     }); 
}); 

それとも、名前でプロパティを直接アクセスすることができます

jQuery.each(orders, function(key, value) { 
    console.log(value.title); 
}); 
0

あなたは、行の値を印刷しますか?または単純な値をしたいですか?

最後の1つが:console.log(key + ": " + value.title);

関連する問題