2009-03-12 11 views
12

मेरे पास एक टेबल है और मैं जानना चाहता हूं कि इसकी आखिरी टीडी में आईडी में एक निश्चित स्ट्रिंग है या नहीं। उदाहरण के लिए, यदि मेरे अंतिम टीडी में आईडी "1234 एबीसी" है, तो मैं जानना चाहता हूं कि इस आईडी में "34 ए" है या नहीं। और मुझे इसे 'if' कथन में करने की ज़रूरत है।jQuery - अगर आईडी में एक विशिष्ट स्ट्रिंग है तो मैं कैसे पा सकता हूं?

अगर (myLastTdId "blablabla" शामिल है) {करना कुछ}

धन्यवाद !!!

+0

http://stackoverflow.com/a/5866314/900284 –

उत्तर

22

आप इस्तेमाल कर सकते हैं "attributeContains "चयनकर्ता:

if($("#yourTable td:last-child[id*='34a']").length > 0) { 
    //Exists, do something... 
} 
+0

और, अपने "कुछ" के होते हैं, तो एक jQuery ऑपरेशन, एक सीएसएस सेट करने का कहना है, आप इसे केवल चेन कर सकते हैं - यदि आवश्यक हो तो नहीं: ("#yourTable td: last-child [id * = '34a']")। सीएसएस ("रंग", "लाल"); –

+0

^अभिव्यक्ति की शुरुआत में $ डालें –

+0

'> 0' भाग अनावश्यक है। बस 'element.length' काम करेगा। –

8

यह आसानी से indexOf और last-child के साथ किया जाता है।

<table id='mytable'> 
<tr> 
    <td id='abc'></td> 
    <td id='cde'></td> 
</tr> 
</table> 

<script> 
if($('#mytable td:last-child').attr('id').indexOf('d') != -1) { 
    alert('found!'); 
} 
</script> 

यहाँ यह चेतावनी है, क्योंकि d स्ट्रिंग में प्रकट होता है cde

0

यदि आपका td "नंगे" (यानी एक jQuery वस्तु में लिपटे नहीं) है, तो आप अपने id विशेषता सीधे उपयोग कर सकते हैं 'पाया':

:

if (myTD.id.indexOf("34a") > -1) { 
    // do stuff 
} 

यदि यह एक jQuery वस्तु में है, आपको पहले उसे बाहर निकलने के लिए की आवश्यकता होगी

if (jMyTD[0].id.indexOf("34a") > -1 { 
    // do stuff 
} 

indexOf फ़ंक्शन एक स्ट्रिंग के दूसरे स्ट्रिंग को ऑफ़सेट करता है। यह 1 देता है यदि पहली स्ट्रिंग में दूसरा नहीं होता है।

संपादित करें:

दूसरी सोचा पर, आप अपने प्रश्न को स्पष्ट करना पड़ सकता है। यह स्पष्ट नहीं है जो इन आप के खिलाफ "34a" मैच के लिए कोशिश कर रहे हैं:

  • <td id="1234abcd">blahblah</td>
  • <td id="blahblah">1234abcd</td>
  • <table id="1234abcd"><tr><td>blahblah</td></tr></table>
  • <table id="blahblah"><tr><td>1234abcd</td></tr></table>
0

पूरी तरह से स्पष्ट नहीं है कि आप प्रत्येक टीआर, या बहुत पिछले टीडी में पिछले टीडी मतलब यदि:

if ($('#myTable td:last[id*=34a]').length) { 
    ... 
} 
संबंधित मुद्दे