Как выбрать и изменить значение ячейки таблицы с помощью jQuery?

Как изменить содержимое ячейки, содержащей букву "c" в примере HTML, с помощью jQuery?

<table id="table_header">
<tr>
   <td>a</td>
   <td>b</td>
   <td>c</td>
</tr>
</table>

Благодарю.

5 ответов

Решение
$("td:contains('c')").html("new");

или, точнее $("#table_headers td:contains('c')").html("new");

и, возможно, для повторного использования вы можете создать функцию для вызова

function ReplaceCellContent(find, replace)
{
    $("#table_headers td:contains('" + find + "')").html(replace);
}

С помощью eq() Вы можете выбрать третью ячейку в таблице:

$('#table_header td').eq(2).html('new content');

Если вы хотите настроить таргетинг на каждую третью ячейку в каждой строке, используйте nth-child-selector:

$('#table_header td:nth-child(3)').html('new content');

Вы можете использовать CSS-селекторы.

В зависимости от того, как вы получите этот тд, вы можете дать ему идентификатор:

<td id='cell'>c</td>

а затем используйте:

$("#cell").text("text");

Или перейдите к третьей ячейке первого ряда table_header и т. Д.

Я хотел изменить значение столбца в определенной строке. Благодаря приведенным выше ответам и после некоторых поисков, которые можно найти ниже,

var dataTable = $("#yourtableid");
var rowNumber = 0;  
var columnNumber= 2;   
dataTable[0].rows[rowNumber].cells[columnNumber].innerHTML = 'New Content';

Я искал изменение второй строки HTML, и вы можете сделать каскадный селектор

$('#tbox1 tr:nth-child(2) td').html(11111)

Вы можете сделать это:

<table id="table_header">
<tr>
   <td contenteditable="true">a</td>
   <td contenteditable="true">b</td>
   <td contenteditable="true">c</td>
</tr>
</table>
Другие вопросы по тегам