Javascript 如何选择具有相同前缀的多类
如何在jQuery中选择以Javascript 如何选择具有相同前缀的多类,javascript,jquery,Javascript,Jquery,如何在jQuery中选择以foo class-开头的多类,即foo-class-1、foo-class-2、foo-class-3…使用以下命令尝试此操作: 案例1:当元素只有一个类时 var $class = $('[class^="foo-class-"]'); 案例2:当一个元素有多个类时(归功于Adeneo) 使用以下命令尝试此操作: 案例1:当元素只有一个类时 var $class = $('[class^="foo-class-"]'); 案例2:当一个元素有多个类时(归功于Ad
foo class-
开头的多类,即foo-class-1
、foo-class-2
、foo-class-3
…使用以下命令尝试此操作:
案例1:当元素只有一个类时
var $class = $('[class^="foo-class-"]');
案例2:当一个元素有多个类时(归功于Adeneo)
使用以下命令尝试此操作:
案例1:当元素只有一个类时
var $class = $('[class^="foo-class-"]');
案例2:当一个元素有多个类时(归功于Adeneo)
您可以指定要替换类的任何属性
var foos = $('*', parent_selector).filter(function() {
return (" " + this.className).indexOf(' foo-class-') != -1;
});
如果您的class=“”
属性可能有多个类,那么您最好使用自定义的.filter()
选项来代替类,您可以指定所需的属性
var foos = $('*', parent_selector).filter(function() {
return (" " + this.className).indexOf(' foo-class-') != -1;
});
在这里,我使用正则表达式筛选出具有类值的元素,该类值具有foo class-
。我的正则表达式已经生锈了,所以我确信这是次优的,但是你应该了解要点
var candidates = $('div'); // or some preliminary selection
var finalists = candidates.filter(function () {
return !!/\bfoo-class-.*/.exec(this.className);
});
如果您的class=”“
属性可能有多个类,那么您最好使用自定义的.filter()
选项
在这里,我使用正则表达式筛选出具有类值的元素,该类值具有foo class-
。我的正则表达式已经生锈了,所以我确信这是次优的,但是你应该了解要点
var candidates = $('div'); // or some preliminary selection
var finalists = candidates.filter(function () {
return !!/\bfoo-class-.*/.exec(this.className);
});
如果有多个类,则假定该类是列出的第一个类。这将在
@JamesMontagne::)等同样存在问题的情况下失败,类名包含但不以字符串开头。另外,这不是您发布的答案。@user1912285对于这种情况,它将不再起作用。以下是解决方案@JamesMontagne:现在可以吗??如果有多个类,则假定该类是列出的第一个类。这将在
@JamesMontagne::)等同样存在问题的情况下失败,类名包含但不以字符串开头。另外,这不是您发布的答案。@user1912285对于这种情况,它将不再起作用。以下是解决方案@JamesMontagne:现在可以吗??您有权访问生成html的代码吗?在每个元素上包含一个共享类会更好。为它们提供一个公共类,并避免缓慢的工作。@ArtyomNeustroev不是重复的-这是一个更难的问题,因为ID只有一个值,但类可能有多个(空格分隔的)值。您有权访问生成html的代码吗?在每个元素上包含一个共享类会更好。给它们一个公共类,避免缓慢的工作。@ArtyomNeustroev不是重复的-这是一个更难的问题,因为ID只有一个值,但类可能有多个(空格分隔的)值。只希望在foo类之前没有其他类。谢谢!,这意味着我可以在项中使用它代码>?(jQueryUI)抱歉,我对此不确定。请再试一次,让我知道我尝试了应用您的代码,但它不起作用:只希望在foo one之前没有其他课程。谢谢!,这意味着我可以在项中使用它代码>?(jQueryUI)抱歉,我对此不确定。请再试一次,让我知道我试图应用您的代码,但它不起作用:如果类名前面没有空格怎么办?将失败class=“foo-class-x”
,如果类名前面没有空格怎么办?将失败class=“foo-class-x”
此“包含”而不是“以开头”.@JamesMontagne~就像我说的,生锈了。@JamesMontagne~更新了。希望情况会好一些d此“包含”而不是“开始于”。@JamesMontagne~如我所说,rusty。@JamesMontagne~已更新。希望情况会好一些D