2017-01-28 3 views
1

У меня есть код:Jquery каждый HTML

success: function(res) {     
    if(res.updated.length > 0) { 
     $.each(res.updated, function(k,row) { 
      $('.topStatsOuter').html(row.html); 
     }); 
    } 
} 

Когда я пытаюсь оповещения (row.html), я получил все результаты, но когда я использую код, как описано выше. Почему он добавляет только один результат?

EDIT.

Пробный прилагается. Мой первоначальные ДИВ: http://image.prntscr.com/image/3ac6dc5a137e46ababff6acd6bfc2a1a.png

После Append: http://image.prntscr.com/image/6b9a2fc093c0440a8d39afd8db0dc274.png Я хочу, чтобы переписать, не добавить то же код

+0

Try '$ ('.topStatsOuter') .append (row.html);' - Потому что вы в настоящее время перезаписи содержимого элемента (при использовании 'HTML()') , Вы можете добавить '$ ('.topStatsOuter') .empty()' перед циклом, чтобы удалить любой предыдущий контент –

+0

@AlonEitan попытался, а не работает – EvaldasL

+0

Вы пытались удалить элемент '$ ('.topStatsOuter') .emtpy () 'перед' $ .each (res.updated, function (k, row) {'line? –

ответ

1

Что вы делаете в данный момент, это перезаписать содержимое элемента ($('.topStatsOuter').html(row.html);).

Что нужно сделать, это сначала очистить содержимое элемента, а затем добавить результаты с помощью цикла. Ваш код должен выглядеть следующим образом:

success: function(res) {     
    if(res.updated.length > 0) { 
     $('.topStatsOuter').empty(); 
     $.each(res.updated, function(k,row) { 
      $('.topStatsOuter').append(row.html); 
     }); 
    } 
} 
1

Вы можете попробовать это:

success: function(res) {     
    if(res.updated.length > 0) { 
     var html=""; 
     $.each(res.updated, function(k,row) { 
      html+=row.html; 
     }); 
     $('.topStatsOuter').html(html); 
    } 
} 

Надеется, что это помогает.

+1

Это тоже хороший пример –

 Смежные вопросы

  • Нет связанных вопросов^_^