jquery按正则表达式id选择元素

jquery按正则表达式id选择元素,jquery,regex,Jquery,Regex,如何使用正则表达式选择所有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-v

如何使用正则表达式选择所有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


ID(中间的数字)更改的位置。

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

您甚至可以同时使用
开头和
结尾的选择器?

您可以使用选择器:

$(":checkbox[id$='1249-checkbox'], 
   :checkbox[id$='1259-checkbox'], 
   :checkbox[id$='1122-checkbox']");
通过这种方式,您将获得具有这些特定标识符(124912591122)的复选框,因此,如果存在类似的复选框,但具有不同的标识符,它们将不会进入您的选择


因此,我假设您希望在一组类似项目中选中这些特定项目的复选框。

要获取带有模式
值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');

请参阅工作。

ID发生变化,1080从一个元素变为另一个元素OK,我如何才能让那些具有
值的任何子元素任何子元素任何复选框
其中
ANY
是一个数字?我发布了一个新的答案,它使用自定义jquery选择器来解决这个问题。
$(':checkbox:mychecks');
//or the equivalent
$('input[type=checkbox]:mychecks');