2013-04-18 56 views
2

如何在第二個td中選擇包含USDTRY值的tr標籤並使用jquery使用TRYUSD更改其值?在表中選擇合適的tr - jquery

<table class="k-selectable" cellspacing="0" role="grid" data-role="selectable"> 
<tbody> 
    <tr role="row" data-uid="9d1c0ae7-ec5d-4377-ad61-9eace8158802"> 
     <td role="gridcell"> 
      <img src="/Images/up.png"> 
     </td> 
     <td role="gridcell">USDTRY</td> 
     <td role="gridcell">1.30514</td> 
     <td role="gridcell">1.30527</td> 
    </tr> 
    <tr class="k-alt" role="row" data-uid="0ff48da9-2019-4cf8-b631-a09c3ce98d63"> 
    <tr role="row" data-uid="2c9ae0ba-c744-4bbb-9a23-fd15a3b65b6c"> 
</tbody> 

回答

1

你可以使用這個片段:

$('td[role="gridcell"]:contains("USDTRY")').text('TRYUSD'); 

Demo

1

也許不是一個完美的解決方案,但嘗試這個辦法:

$('table.k-selectable tr td').each(function() { 
    if($(this).text() === 'USDTRY') { 
     $(this).text('TRYUSD'); 
    } 
}); 
1
$(selector).find("tr:contains('USDTRY ')"); 

$('tableId td:contains("USDTRY")').text('TRYUSD '); 
1

使用包含選擇:

$('td:contains("USDTRY")').html('TRYUSD '); 
2

你要儘可能使用常規選擇縮小選擇範圍,然後你可以使用:contains psuedoselector來搜索文本:

$('table.k-selectable td:contains("USDTRY")').text('TRYUSD'); 
+0

可以縮小到'TR TD:contains'? – asprin

+0

@asprin表示'td'而不是'tr',謝謝。 – jbabey

1

您無需找到tr ..只需找到td使用filter()和替換文本

$('td').filter(function(){ 
    return $(this).text() == "USDTRY"; 
}).text('TRYUSD'); 

fiddle here