jQuery - 我怎样才能找到id是否有特定的字符串?

时间:2009-03-12 23:37:55

标签: jquery

我有一个表,我想知道它的最后一个标识是否包含某个字符串。 例如,如果我的上一个td的id为“1234abc”,我想知道这个id是否包含“34a”。 我需要在'if'声明中这样做。

if(myLastTdId包含“blablabla”){做某事}

感谢!!!

4 个答案:

答案 0 :(得分:24)

您可以使用“attributeContains”选择器:

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

答案 1 :(得分:9)

使用indexOflast-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

答案 2 :(得分:1)

如果您的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>

答案 3 :(得分:0)

如果您指的是每个tr中的最后一个td,或者最后一个td:

,则不完全清楚
if ($('#myTable td:last[id*=34a]').length) {
    ...
}