0

ここに画像の説明を入力

テキストが存在する場合、テーブルの最初の列のすべての行をチェックしたいのですが、存在する場合は、同じ行の 2 番目のセルの値を上書きしたいと考えています。いろいろ試しましたが、たどり着けませんでした。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>');
 });
4

1 に答える 1

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/

于 2013-07-30T13:27:03.020 に答える