Javascript, как я могу получить доступ к определенному дочернему элементу строки?
используя Javascript, как я могу получить доступ к определенному дочернему элементу строки? Javascript (не jQuery, пожалуйста).
например: второй <TD>
of <TR>
где ID=id33322010100167
<table>
<tr id="id33322010100167">
<td>20101001</td>
<td>918</td>
<td>919</td>
<td>67</td>
<td>CAR PROBLEM</td>
</tr>
<tr id="id33322010100169">
<td>20102001</td>
<td>913</td>
<td>914</td>
<td>62</td>
<td>LUNCHTIME</td>
</tr>
<table>
6 ответов
var index = 1; // second element
var child = document.getElementById('id33322010100167').childNodes[index]
может быть, вы можете попробовать это:
var tRow = document.getElementById("tableName").getElementsByTagName("tr");
for(var i = 0; i < tRow.length; i++){
if(tRow[i].id == "name of your id"){
//do something
}
}
наиболее надежным является cells
коллекция, которая в отличие от childNodes
в браузерах, отличных от IE, игнорируются текстовые узлы пробелов между ячейками:
var td = document.getElementById("id33322010100167").cells[1];
используя DOM, вы можете получить таблицу, а затем перебирать дочерние элементы, сохраняя счет.
конечно, идентификаторы элементов должны быть уникальными, так что document.getElementById('id')
строительство.
использовать jQuery:
first = $('#id33322010100167 td:first'); // gives you the first td of the tr with id id33322010100167
last = $('#id33322010100167 td:last'); // gives you the last td of the tr with id id33322010100167
вы можете использовать next() для перебора элементов
first.next();
<table id="studTable" class="table table-bordered">
<thead>
<tr>
<td>Click</td>
</tr>
</thead>
<tbody>
<tr><td><a href="#" onclick="ClickRow(this)">Click</a></td></tr>
</tbody>
</table>
для таблицы выше вы можете использовать что-то связать это. вы можете прочитать выбранную строку, нажав строку / ячейку внутри строки и прочитать значения ячеек и / или удалить строку из таблицы
function ClickRow(r) {
console.log(r.parentNode.parentNode.cells[0].innerHTML); //Read First Cell in Row
var i = r.parentNode.parentNode.rowIndex;
document.getElementById("studTable").deleteRow(i); //Remove Row
}