2010-10-01 8 views
6

जावास्क्रिप्ट का उपयोग करके, मैं एक पंक्ति के विशिष्ट बच्चे को कैसे एक्सेस कर सकता हूं? जावास्क्रिप्ट (कृपया jQuery नहीं)।जावास्क्रिप्ट, मैं पंक्ति के एक विशिष्ट बच्चे को कैसे एक्सेस कर सकता हूं?

उदा .: दूसरी <TR> की <TD> जहां आईडी = id33322010100167

<table> 
<tr id="id33322010100167"> 
<td>20101001</td> 
<td>918</td> 
<td>919</td> 
<td>67</td> 
<td>CAR PROBLEM</td> 
</tr> 
<tr id="id33322010100169"> 
<td>20102001</td> 
<td>913</td> 
<td>914</td> 
<td>62</td> 
<td>LUNCHTIME</td> 
</tr> 
<table> 
+1

आप jQuery का उपयोग कर सकते हैं? –

+2

आपको यहां कोई समस्या है, आपके दो 'tr' तत्व में वही 'आईडी' मान है! – romaintaz

+0

कोई jquery। ब्लैकबेरी पर काम करना चाहिए, jquery (अभी तक) नहीं है। तत्व – robert

उत्तर

5
var index = 1; // second element 
var child = document.getElementById('id33322010100167').childNodes[index] 
+0

क्या आपने यह कोशिश की है? यह पहला '' देता है, दूसरा नहीं, क्योंकि ' 'का पहला बच्चा नोड व्हाइटस्पेस युक्त टेक्स्ट नोड है। –

+0

फिर सूचकांक को 2 में बदलें। विधि अभी भी अच्छी है। – RaYell

+0

नहीं, यह नहीं है। 'document.getElementById ('id33322010100167')। childNodes [2] 'एक और सफेद जगह नोड देगा। इसके अलावा, क्या होगा अगर ओपी ने अपने स्रोत कोड में सभी लाइन ब्रेक हटा दिए? यह '' तत्वों के क्रम को सुरक्षित करता है जबकि 'बाल नोड्स' संग्रह को पूरी तरह से बदलता है। –

0

डोम का उपयोग करके आप तालिका पाने और उसके बाद बच्चे तत्वों से अधिक पुनरावृति जबकि गिनती रखने कर सकते हैं।

बेशक तत्व आईडी को अद्वितीय माना जाना चाहिए ताकि document.getElementById('id') काम कर सकें।

0

उपयोग jQuery:

first = $('#id33322010100167 td:first'); // gives you the first td of the tr with id id33322010100167 
last = $('#id33322010100167 td:last'); // gives you the last td of the tr with id id33322010100167 

आप अगले उपयोग कर सकते हैं() तत्वों के माध्यम से पुनरावृति करने के लिए

first.next(); 
+0

"कृपया jquery कृपया नहीं" – gbmhunter

1

सबसे विश्वसनीय cells संग्रह है, जो गैर आईई ब्राउज़रों में childNodes के विपरीत कोशिकाओं के बीच व्हाइटस्पेस टेक्स्ट नोड्स को अनदेखा कर देगा:

var td = document.getElementById("id33322010100167").cells[1]; 
3

हो सकता है कि आप इस कोशिश कर सकते हैं:

var tRow = document.getElementById("tableName").getElementsByTagName("tr"); 

for(var i = 0; i < tRow.length; i++){ 
    if(tRow[i].id == "name of your id"){ 
     //do something 
    } 
} 
+0

'document.all' इन दिनों उपयोग करने के लिए एक अच्छी बात नहीं है। –

+0

मैंने इसे – Shaoz

+0

से हटा लिया है अन्य मुद्दा यह है कि उदाहरण में '' तत्वों में कोई आईडी नहीं है और ओपी उन्हें जोड़ना नहीं चाहता है। –

संबंधित मुद्दे

 संबंधित मुद्दे