jQuery-查找具有类1或类2的元素

我正在尝试在类为myClass1或myClass2的元素内查找文本。

var myText = $(this).find('.myClass1:first').text();

这工作正常,但我不确定是否/如何检查2个类之一(我提到的这2个元素中,我的元素将只有一个类)。

谢谢你的帮助!

ale asked 2019-11-17T18:05:56Z
4个解决方案
76 votes

如果要找到第一个(但只有一个),请使用

var myText = $(this).find('.myClass1,.myClass2').eq(0).text();

如果您想要每种中的第一种(两种结果),请查看@jelbourn提供的答案。

Gabriele Petrioli answered 2019-11-17T18:06:23Z
26 votes

您可以用逗号分隔选择器,以生成一个包含所有元素的列表(其中一个或两个都包含):

var elements = $(this).find('.myclass1:first, .myclass2:first');
Jeremy Elbourn answered 2019-11-17T18:06:47Z
11 votes

在选择器中的两个类之间输入逗号。

$(".a, .b")

这将匹配类别“ a”或类别“ b”的所有元素

[http://api.jquery.com/class-selector/]

Mauro answered 2019-11-17T18:07:23Z
4 votes

使用if语句和jQuery hasClass()函数:

[http://api.jquery.com/hasClass/]

它可能看起来像这样:

if($(this).hasClass('myClass1') || $(this).hasClass('myClass2')) {
  myText = $(this).text();
} else {
  myText = null;
}
James Thompson answered 2019-11-17T18:07:58Z
translate from https://stackoverflow.com:/questions/4196385/find-element-that-has-either-class-1-or-class-2