0

我如何使用正则表达式来选择所有具有 id 的复选框

edit-field-media-en-cat-value-1080-children-1122-children-1249-checkbox

edit-field-media-en-cat-value-1080-children-1125-children-1259-checkbox

edit-field-media-en-cat-value-1080-children-1249-checkbox

edit-field-media-en-cat-value-1080-children-1122-checkbox

IDS(中间的数字)变化的地方。

4

3 回答 3

1

为什么不使用属性选择器和“开始于”:

$('input[id^="edit-field-media"][id$="children-1249-checkbox"]')

你甚至可以同时使用starts withends with选择器?

于 2012-11-06T12:48:58.440 回答
0

要使用该模式获取复选框,value-ANY-children-ANY-children-ANY-checkbox您可以使用自定义选择器,如下所示:

$.expr[':'].mychecks = function(elem, i, match, stack) {
   reg = /value-[0-9]+-children-[0-9]+-children-[0-9]+-checkbox/g
   return reg.test(elem.id);
};

然后像这样使用它:

$(':checkbox:mychecks');
//or the equivalent
$('input[type=checkbox]:mychecks');

请参阅工作演示

于 2012-11-06T13:29:22.733 回答
0

你可以用选择器结束

$(":checkbox[id$='1249-checkbox'], 
   :checkbox[id$='1259-checkbox'], 
   :checkbox[id$='1122-checkbox']");

这样,您将获得具有这些特定标识符 (1249,1259,1122) 的复选框,因此如果有类似的复选框但具有不同的标识符,它们将不会进入您的选择。

所以我假设您想要在一组相似项目中选择这些特定项目的复选框。

于 2012-11-06T12:50:34.283 回答