2016-08-31 1 views
0

Возможно, я делаю это плохо, но я пытался пропустить json для создания таблицы. Кодирование его без цикла работает, и я могу выполнить цикл с одним циклом, но если я добавлю вложенный, он не будет создавать строки. Я делаю это правильно или я что-то упускаю?Looping через json для создания таблицы

for(var i = 3; i < 17; i++){ 

    $('.one').append("<tr>"); 

    for(var j = 0; j < 5; j++){ 

     $('.one').append("<td>" + obj.values[i][j] + "</td>");  

    } 

    $('.one').append("</tr>"); 
} 

Я надеюсь, что это не просто опечатка я с видом, но я имею несколько способов, и может заставить его работать на жестком кодирования^и делая линию длиннее. Я все еще довольно новый, и это был мой первый успешный вызов ajax. Любая помощь приветствуется. Спасибо.

+0

где ваша структура данных JSON? можете ли вы показать его здесь? –

ответ

0

JQuery .append() не добавляет отдельные открытые и закрывающие теги в DOM. Он добавляет целый элемент - открытый и закрывающий тег. В вашем коде каждый раз, когда вы вызываете append(), он перезаписывает предыдущий вывод.

Вот возможное решение:

для (вар я = 3; я < 17; я ++) {

$('.one').append("<tr>"); 

for(var j = 0; j < 5; j++){ 

    $('.one tr').html("<td>" + obj.values[i][j] + "</td>");  

} 

}

+0

Отлично! Я не знал, что приложение должно добавить весь тег для его работы. Для моего кода я ставлю: $ ('. One'). Append (""); . во внешнем контуре и использованы: $ ('тр один: последний раз') добавление (" "+ obj.values ​​[I] [J] +""); на внутренней петле. Теперь код работает, и он намного меньше. Еще раз спасибо! –

+0

Я рад, что это помогло! Это всегда хорошо, когда вы можете уменьшить количество кода! – codeslinger