如果文本存在,我想检查表的第一列的所有行,如果存在,我想要覆盖同一行的第二个单元格中的值。我尝试了很多,但无法实现。我使用jQuery 1.7.1。
<table id="tbl">
<tr>
<td>sakthi</td>
<td>1</td>
</tr>
<tr>
<td>pushparaj</td>
<td>2</td>
</tr>
</table>
$('#tbl >tr').each(function() {
if($(this).find('td:contains'+sakthi+''))
{
var oldVal = $(this).find('td:eq(1)').text();//find value from first td
$(this).find('td:eq(1)').text(+oldVal + +5);//replace the same value
}
$('#tbluom >tbody').append('<tr><td>' + UOMCaption + '</td><td>' + UOMQty + '</td></tr>');
});
答案 0 :(得分:3)
您可以使用filter
$("#tbl tr td:first-child").filter(function() {
return $(this).text().indexOf("sakthi") > -1;
}).next("td").text(function() {
var currentText = $(this).text();
console.log("Current Text: " + currentText);
return currentText + " changed";
});
.text()
可以接受函数回调。因此,在此回调中,您可以获取当前值,修改它,然后返回您想要的新值。