2013-05-21 12 views
13

मैं इस चीज है:jQuery चयनकर्ता प्रत्येक पंक्ति के पहले टीडी

<table> 
    <tr> 
    <td>nonono</td> <!-- FIND THIS --> 
    </td>foobar</td> 
    </tr> 
    <tr> 
    <td>nonono2</td> <!-- FIND THIS --> 
    </td>foobar2</td> 
    </tr> 
    <tr> 
    <td>nonono3</td> <!-- FIND THIS --> 
    </td>foobar2</td> 
    </tr> 
</table> 

मैं कोई भाग्य के साथ $('td:first') साथ की कोशिश की है;

अपेक्षित वापसी: <td>nonono</td>, <td>nonon2</td> और <td>nonon3</td>

अग्रिम धन्यवाद!

+0

से [प्रलेखन] (http://api.jquery.com/first-selector/): * "' 'पहला 'छद्म वर्ग': eq (0) 'के समतुल्य है। इसे' lt (1) 'के रूप में भी लिखा जा सकता है। हालांकि यह केवल एक तत्व से मेल खाता है,': प्रथम-बच्चा ' एक से अधिक मैच: प्रत्येक माता पिता के लिए एक।"* –

उत्तर

28

आप :first के बजाय :first-child उपयोग करना चाहिए: आप उन के माध्यम से पुनरावृति के लिए इच्छुक रहे हैं

लग रहा है। आप .each() का उपयोग कर ऐसा कर सकते हैं।

उदाहरण:

$('td:first-child').each(function() { 
    console.log($(this).text()); 
}); 

परिणाम:

nonono 
nonono2 
nonono3 
Alernatively

अगर आप पुनरावृति के लिए इच्छुक नहीं कर रहे हैं:

$('td:first-child').css('background', '#000'); 

JSFiddle demo

+0

मैं सही उत्तर के रूप में स्वीकार करूंगा क्योंकि वैकल्पिक रूप से विधि contais ': first-child' –

6

इस चयनकर्ता कोशिश -

$("tr").find("td:first") 

डेमो -->http://jsfiddle.net/66HbV/

या

$("tr td:first-child") 

डेमो -->http://jsfiddle.net/66HbV/1/

</td>foobar</td>होना चाहिए

+0

केवल पहले टीडी –

+1

लौटाता है बस 'पहले-बच्चे' का उपयोग करें। कारण: पहला 'अकेले काम नहीं करता है क्योंकि यह पहले तत्व को खींच रहा है और कुछ भी नहीं। –

+0

यह मेरे लिए किया गया। जब आप हैं मैंने चयनित केवल एक की तलाश की: '$ (यह)। ढूँढें (" td: first ")' – Sander

1

var children = null; 
$('tr').each(function(){ 
    var td = $(this).children('td:first'); 
    if(children == null) 
     children = td; 
    else 
     children.add(td); 
}); 

// children should now hold all the first td elements 
1

$('td:first-child') कोशिश तत्वों है कि आप चाहते हैं का संग्रह वापस आ जाएगी।

var text = $('td:first-child').map(function() { 
    return $(this).html(); 
}).get(); 
2

उपयोग:

$("tr").find("td:first"); 

js fiddle - इस उदाहरण को दिखाने के लिए है कि यह तत्व लौटा रहा है अंत पर .text() है।

वैकल्पिक रूप से, आप का उपयोग कर सकते हैं:

$("td:first-child"); 

.find() - jQuery API दस्तावेज़

2
var tablefirstcolumn=$("tr").find("td:first") 
alert(tablefirstcolumn+"of Each row") 
संबंधित मुद्दे