Динамически пронумеровать строки таблицы
Как можно динамически пронумеровать (внеся счет в отдельную ячейку) строки таблицы с использованием jquery?
|
можно. пройтись циклом и поставив счётчик в каждую ячейку. в jquery не знаю, я на магию клал.
|
n++
|
может лучше нумерованный список использовать?
|
Цитата:
|
Цитата:
|
n++ это автоинкримент...
алгоритм будет приблизительно такой цикл (количество строк) вывод значения номера строки, к примеру n затем n++; на php это выглядело бы примерно так: <table> <tr> <?php if ($i=0; $i < $n_srok; $i++){ print '<td>'.$i.'</td>'; print '<td>Содержимое строки</td>'; } ?> </tr> </table> На jquery вопрос синтаксиса... |
<table> <tr> <td></td> <td>Row</td> </tr> <tr> <td></td> <td>Row</td> </tr> <tr> <td></td> <td>Row</td> </tr> <tr> <td></td> <td>Row</td> </tr> </table> <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js"></script> <script> $('table tr').each(function(i) { var number = i + 1; $(this).find('td:first').text(number); }); </script> |
Цитата:
|
Вот, век живи - век учись :)
|
$("#add_session").live("click", function(){ $("#new_profile_table").append('<tr>'+session_form+'</tr>'); $("#new_profile_table tr.sess").each(function(i){ $(this).attr("id", "new_session_"+i+1); $(this).find("td.session_count").find("p").text(i+1); }) }); Не работает вот так. Может быть такое, что $(this) перехватывается и вместо прохождения цикла хранит в себе объект, на котором кликнули? |
Alert(i) внутри each дает постоянно нули. цикл не идет, я был прав - this перехватывается функций live.
|
Цитата:
Зачем нужна ссылка на https://ajax.googleapis.com/ajax/lib.../jquery.min.js что там есть ? |
Цитата:
var table = document.getElementById("table"); var tr = table.getElementsByTagName("tr"); for (var i=0; i < tr.length; i++) { tr[i].innerHTML = '<td>'+i+'.</td>'+tr[i].innerHTML; } |
BaBaKa, :cray:
insertCell лучше |
Цитата:
|
Цитата:
<table> <tr> <td></td> <td>Row</td> </tr> <tr> <td></td> <td>Row</td> </tr> <tr> <td></td> <td>Row</td> </tr> <tr> <td></td> <td>Row</td> </tr> </table> <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script> <script> $('table tr:nth-child(n + 2)').each(function(i) { var number = i + 1; $(this).find('td:first').text(number); }); </script> или просто подумать <table> <tr> <td></td> <td>Row</td> </tr> <tr> <td></td> <td>Row</td> </tr> <tr> <td></td> <td>Row</td> </tr> <tr> <td></td> <td>Row</td> </tr> </table> <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script> <script> $('table tr').each(function(i) { i && $(this).find('td:first').text(i); }); </script> |
Часовой пояс GMT +3, время: 02:54. |