2012-03-02 114 views
0

我想在下面的HTML結構中使用Jquery將「Yes!Pick me」更改爲「Picked」。我應該如何選擇它?請擺脫一些光線,謝謝!如何使用Jquery選擇此特定td元素的文本

我試過$( '#myDiv> TABLE> TR')方程(1),但不知道該怎麼繼續......

<div id="myDiv"> 
     <table> 

      <tr> 
      <td>Not me..</td> 

      <td>Not me..</td> 
      </tr> 

      <tr> 
      <td>Not me..</td> 

      <td>Yes! Pick me~ </td> 
      </tr> 

    </table> 

    </div> 
+0

這不是與您的其他曲estion:http://stackoverflow.com/questions/9437914/how-to-select-this-specific-td-element-and-its-text-with-jquery? – j08691 2012-03-02 20:55:00

+0

嗨j08691,它不是真的一樣。這次我需要選擇一些並不總是相同標籤的首次出現。例如是第二次出現。​​也是第二次出現的類型...謝謝.. – eastboundr 2012-03-02 20:55:33

回答

1

使用:contains選擇器。

$('#myDiv').find('td:contains(Yes! Pick me~)').text('Picked'); 

如果您不能包含的文本查詢,做到像

$('#myDiv tr:eq1(1) td:last').text('Picked'); 
+0

哇,jAndy,$('#myDiv tr:eq1(1)td:last')。text('Picked'); 像魅力一樣工作。除了在我的實際代碼中的某些原因外,我想選擇的第三個外觀,但我必須使用tr:eq(3)而不是tr:eq(4)。奇怪......也許算作一個?無論如何,它現在解決了這個問題,謝謝 – eastboundr 2012-03-02 21:05:31

+0

@eastboundr:嗯,你需要找到一個非常獨特的屬性,你可以識別你想修改的'td'。基於此,你可以選擇一個選擇器 – jAndy 2012-03-02 21:08:26

+0

nvm,我發現我誤讀了一個存在於另一個td內的隱藏tr。所以代碼工作得很好。再次感謝。 – eastboundr 2012-03-02 21:13:17

1

你可以使用:

$('td:contains("Yes! Pick me~ ")'); 

JS Fiddle demo

或者:

$('tr:eq(1) td:eq(1)'); 

JS Fiddle demo

參考文獻:

+0

謝謝,第二個作品。因爲我無法預測動態生成的文本。謝謝。 – eastboundr 2012-03-02 21:08:28

+0

不客氣,我很高興得到了幫助! =) – 2012-03-02 21:09:59

0

很簡單,只需添加一個類你TD要改變這樣的:

<td class="to-change">Yes! Pick me~</td> 

和jQuery

$("td.to-change").html("Picked!"); 
+0

對不起,我不能真正改變代碼。這更像是一些預生成代碼的後期修改。不管怎麼說,多謝拉。 – eastboundr 2012-03-02 21:07:19

相關問題