Как сложить все ячейки в каждом столбце?
Здравствуйте всем.
Я еще только начинаю учить js и попрошу сразу не кидаться камнями. Мне нужен простой скрипт, который будет брать все значения ячеек из таблицы и суммировать их в столбцах. Иными словами мне нужно получить суммы каждого из столбцов таблицы и вывести их через div. <!DOCTYPE> <html> <head></head> <body> <table class="journal" id="main" > <tbody> <tr> <td>1</td> <td>2</td> <td>3</td> <td>4</td> <td>5</td> </tr> <tr> <td>1</td> <td>2</td> <td>3</td> <td>4</td> <td>5</td> </tr> <tr> <td>1</td> <td>2</td> <td>3</td> <td>4</td> <td>5</td> </tr> </tbody> </table> <div class="val-1"></div> // Значение суммы единиц <div class="val-2"></div> // Значение суммы двоек <div class="val-3"></div> // Значение суммы троек <div class="val-4"></div> // Значение суммы четверок <div class="val-5"></div> // Значение суммы пятерок </body> </html> Помогите, пожалуйста :help: |
Chamus,
может для начала tbody в table вместо div |
Цитата:
|
Chamus,
<!DOCTYPE HTML>
<html>
<head>
<title>Untitled</title>
<meta charset="utf-8">
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js"></script>
<script>
$(function () {
$("div").each(function (indx) {
var sum = 0;
$("td:nth-child(" + (indx + 1) + ")", "#main").each(function () {
sum += +$(this).text()
});
$(this).text(sum)
});
})
</script>
</head>
<body>
<table class="journal" id="main" >
<tbody>
<tr>
<td>1</td>
<td>2</td>
<td>3</td>
<td>4</td>
<td>5</td>
</tr>
<tr>
<td>1</td>
<td>2</td>
<td>3</td>
<td>4</td>
<td>5</td>
</tr>
<tr>
<td>1</td>
<td>2</td>
<td>3</td>
<td>4</td>
<td>5</td>
</tr>
</tbody>
</table>
<div class="val-1"></div> // Значение суммы единиц
<div class="val-2"></div> // Значение суммы двоек
<div class="val-3"></div> // Значение суммы троек
<div class="val-4"></div> // Значение суммы четверок
<div class="val-5"></div> // Значение суммы пятерок
</body>
</html>
|
Thanks!
|
рони, не хочу наглеть, но спрошу еще кое-что :)
Вот ваша чудесная функция:
$(function () {
$("div").each(function (indx) {
var sum = 0;
$("td:nth-child(" + (indx + 1) + ")", "#main").each(function () {
sum += +$(this).text()
});
$(this).text(sum)
});
})
Помогите, пожалуйста, вывести результат в этой таблице. Эта таблица будет находиться снизу страницы. Каждая ячейка будет под соответствующим столбцом, в которой должна быть сумма значений этого столбца. <table> <tbody> <tr id="roni"> <td>Сумма первого столбца</td> <td>Сумма второго столбца</td> <td>Сумма третьего столбца</td> <td>Сумма четвертого столбца</td> <td>Сумма пятого столбца</td> </tr> </tbody> </table> |
Chamus,
$("div") поменять на $("#roni td") |
Цитата:
|
Chamus,
:cray:
<!DOCTYPE HTML>
<html>
<head>
<title>Untitled</title>
<meta charset="utf-8">
<style type="text/css">
td{
width: 30px;
text-align: center;
}
</style>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js"></script>
<script>
$(function () {
$(".journal tr:first td").each(function (indx) {
var sum = 0;
$("td:nth-child(" + (indx + 1) + ")", ".journal").each(function () {
sum += +$(this).text()
});
$("<td/>",{text:sum}).appendTo("#test")
});
})
</script>
</head>
<body>
<table class="journal" id="main" >
<tbody>
<tr>
<td>1</td>
<td>2</td>
<td>3</td>
<td>4</td>
<td>5</td>
</tr>
<tr>
<td>1</td>
<td>2</td>
<td>3</td>
<td>4</td>
<td>5</td>
</tr>
<tr>
<td>1</td>
<td>2</td>
<td>3</td>
<td>4</td>
<td>5</td>
</tr>
</tbody>
</table>
<table>
<tbody>
<tr id="test">
</tr>
</tbody>
</table>
</body>
</html>
|
рони, не работает на сайте :(
Подскажи, что не так! http://pastebin.com/tvJCpREc Функция в конце // Расчет Может не хочет работать, потому что на сайте несколько таблиц. |
| Часовой пояс GMT +3, время: 22:59. |