@leopardo11

Как сделать в Jquery подобие foreach?

Есть массив полученный из php таким образом

options = {
    action: 'get_events'
  }

  $.get(url + 'plugin/read.json', options, function(data) {
      console.log(data.events);
  });


в data.events содержится такой массив

array (
0 => array (
id => '',
date => ''
)
1 => array (
id => '',
date => ''
)
}


нужно форичом вытащить date каждого элемента массива и в jquery вместо дат в массиве events выставить.

events: [
      { date: '2015-06-10 09:00:00', title: 'CLNDR GitHub Page Finished', url: 'http://github.com/kylestetz/CLNDR' },
      { date: '2015-05-12', title: 'CLNDR GitHub Page Finished', url: 'http://github.com/kylestetz/CLNDR'},
      { date: '2015-05-22', title: 'CLNDR GitHub Page Finished', url: 'http://github.com/kylestetz/CLNDR'}],


типа так, если бы это было в пхп

events: [
foreach ($data.events as $event)
{
{ date: $event['date'], title: 'CLNDR GitHub Page Finished', url: 'github.com/kylestetz/CLNDR' },
}
  • Вопрос задан
  • 398 просмотров
Решения вопроса 2
maddog670
@maddog670
var event='[';
$.each(data.events, function(kye, value){
event  += "{date: "+value.date+",title: "+value.title+", url: "+value.url+"},";
});
event + = "]";
Ответ написан
Комментировать
var obj = {asd: 'asdfgh', foo: 'bar'}, i;
for (i in obj) {
    alert(obj[i]);
}

в вашем случае events - массив, можно циклом по нему пройтись:
var i;
for (i = 0; i < events.length; i++) {
    alert(events[i]);
}
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
shaks
@shaks
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы