jQuery查找仅包含部分引用ID的控件

时间:2011-12-16 16:47:14

标签: jquery jquery-selectors

是否有可能在webform上搜索一个控件,你只想在其中匹配“任何东西”,即:

我在页面上有各种按钮 - 采用id格式:ID#(id1)#(id2)#(日期) - 例如:

ID-8258-3103-2011-12-18
ID-8258-3104-2011-12-18
ID-8258-3105-2011-12-18

我想在查询字符串中传递(id1)和(date),然后让jQuery搜索页面上的第一个控件,它匹配(id1)和(date)以及 any (id2) - 例如,我传递8252和2011-12-18 - 那么如何从jQuery中找到上面的第一个控件?

$("#ID-8252-????????-2011-12-18")

3 个答案:

答案 0 :(得分:37)

您可以组合多个属性选择器,而不是使用#id选择器,这些属性选择器会过滤id属性(一个用于id的开头,一个用于结尾):

$('[id^="ID-8258"][id$="2011-12-18"]').addClass('found');

要仅选择第一个匹配项,请使用:first选择器(与:first-child选择器不同!)

$('[id^="ID-8258"][id$="2011-12-18"]:first').addClass('found');

请参阅http://api.jquery.com/category/selectors/以供参考。

示例:

http://jsfiddle.net/wbLZ8/3/

如果你想在纯CSS中使用它们,似乎这些选择器甚至可以用于IE7。

答案 1 :(得分:1)

您需要在选择器中使用过滤器,如jQuery selector regular expressions中所述。 (查看nickf的回复示例)。

答案 2 :(得分:0)

我发现这是最有帮助的jquery-wildcard-selectors-some-simple-examples