jquery:查找其 id 具有特定模式的元素

Posted

技术标签:

【中文标题】jquery:查找其 id 具有特定模式的元素【英文标题】:jquery: find element whose id has a particular pattern 【发布时间】:2010-12-02 01:09:07 【问题描述】:

我正在尝试查找具有特定模式的 id 的 span 元素。它的主要用途是查找从母版页派生的 asp.net (aspx) 页面呈现的某些元素。

【问题讨论】:

【参考方案1】:

基于公认的答案:

这取决于您要寻找哪种模式。如果您的模式类似于“MasterPageElement_CheckBox_4443”、“MasterPageElement_CheckBox_4448”等,那么您也可以使用:

$("span[id^=MasterPageElement_CheckBox]")

有 3 个用于简单模式的内置属性选择器:

$("span[id^=foo]")

该选择器匹配所有具有id 属性且以foo 开头的跨度(例如fooblah

$("span[id$=foo]")

该选择器匹配所有具有id 属性并以foo 结尾的跨度(例如blahfoo)。

$("span[id*=foo]")

该选择器匹配所有具有id 属性并且其中某处包含foo(例如blahfooblah)的跨度。

【讨论】:

链接:*= pattern、$= pattern 和 ^= pattern【参考方案2】:
$('span').each(function()
   if( $(this).attr('id').match(/pattern/) ) 
        // your code goes here
   
);

问题解决了。

【讨论】:

【参考方案3】:

我知道这是一篇旧帖子,但其他信息可以帮助未来偶然发现此内容的开发人员。 :) 要补充@cdmckay 提到的内容,您可以结合属性选择器来实现“以 X 开头,以 Y 结尾”。

$("input[id^=inp][id$=_AddItem]")

这将匹配 id “inp1_AddItem”、“inp2_AddItem”、“inp3_AddItem”等。

【讨论】:

以上是关于jquery:查找其 id 具有特定模式的元素的主要内容,如果未能解决你的问题,请参考以下文章

xpath按元素和属性查找节点,其中包含具有特定id的子元素

使用jQuery查找页面上元素ID包含特定文本的所有元素

Jquery查找具有特定数据属性的元素[重复]

JQuery 查找具有特定类前缀的第一个父元素

查找具有动态 ID 的元素

JQuery选择器