Доброго времени суток! Есть некая таблица 4x4, необходимо выбрать строку и разбить столбцы, выбранной строки(выбранной строке присваивается уникальный идентификатор "tabindex=0").
Мое решение:
$("tbody").click(function () {
var itemId = $("tbody").find("[tabindex='0']").find("td:eq(0)").html(); // первый элемент td
var itemOb = $("tbody").find("[tabindex='0']").find("td:eq(1)").html(); // второй элемент td
var itemCn = $("tbody").find("[tabindex='0']").find("td:eq(2)").html(); // третий элемент td
var itemZn = $("tbody").find("[tabindex='0']").find("td:eq(3)").html(); // четвертый элемент td
});
Может можно сделать как-то лучше, а еще в моем варианте, при клике каждый раз будет выбираться значение выбранной строки, как сделать так что бы значение выбиралось один раз?
1) Сохранить тело вашей таблице в переменную, искать в переменной
var tbody = $("tbody").find("[tabindex='0']");
var alreadyClicked = false;
$("tbody").click(function() {
if (!alreadyClicked) {
alreadyClicked = true;
var itemId = tbody.find("td:eq(0)").html(); // первый элемент td
var itemOb = tbody.find("td:eq(1)").html(); // второй элемент td
var itemCn = tbody.find("td:eq(2)").html(); // третий элемент td
var itemZn = tbody.find("td:eq(3)").html(); // четвертый элемент td
console.log(itemId);
console.log(itemOb);
console.log(itemCn);
console.log(itemZn);
}
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>
<table rules="all" border="1">
<tbody>
<tr tabindex="0">
<td>Id</td>
<td>Ob</td>
<td>Cn</td>
<td>Zn</td>
</tr>
</tbody>
</table>
2) Если некритично работать не с кучей переменных, а с объектом, то можно еще сделать так:
var tbody = $("tbody").find("[tabindex='0']");
var alreadyClicked = false;
$("tbody").click(function() {
if (!alreadyClicked) {
alreadyClicked = true;
var item = {};
var keys = ['id', 'ob', 'ch', 'zn'];
for (var i = 0; i < 4; i++) {
item[keys[i]] = tbody.find("td:eq(" + i + ")").html();
}
console.log(item);
}
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>
<table rules="all" border="1">
<tbody>
<tr tabindex="0">
<td>Id</td>
<td>Ob</td>
<td>Cn</td>
<td>Zn</td>
</tr>
</tbody>
</table>
Виртуальный выделенный сервер (VDS) становится отличным выбором
Как можно создать dql запрос к базе в SonataAdminУ меня есть mySQL запрос, его нужно перевести в dql, или как-то заюзать его в таком формате, но я не знаю...
Есть окно приложение которое содержит листНужно, чтобы каждый элемент листа отображался как песня в плеере