2013-07-30 99 views
0

enter image description here我想檢查表的第一列的所有行如果文本存在,並且如果它確實想要覆蓋同一行的第二個單元格中的值。我嘗試了很多,並無法得到它。我使用jQuery 1.7.1。jquery查找/包含並替換表單元格值

<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>'); 
}); 

回答

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()可以接受一個回調函數。所以,在這個回調中,你可以獲取當前值,修改它,然後返回你想要的新值。

演示:http://jsfiddle.net/Z7jmz/1/

+0

它在尋找文本工作,我想overrite一些值的下一個TD的價值。你能幫助我嗎? .text(「找到它!」);而不是這個.text(currentvalue + new value);將工作 ? – Sakthivel

+0

什麼是'currentvalue'和'new value'? – tymeJV

+0

一些樣本value.first td有'sakthi',第二個td有'1',如果找到sakthi,我想用'1'做一些事情。 – Sakthivel

相關問題