0

早上好,

抱歉,我认为这是一个简单的“愚蠢”问题,但我有一个很大的空白。

如果 attr 值等于给定值,我想更改一个类。

我有以下内容:

 <a str=10 href="start.php class="old">Start<a>

因此,如果 a 中的 str attr 为 10,我会将类设置为 class="new"

我尝试过类似的东西:

$('a.attr.subnr.10).addClass('old');

我想它是一大早:-(

谢谢 !

4

4 回答 4

3

试试这个简单的语句:

$("a[str='10']").addClass("old");
于 2013-10-10T06:08:33.050 回答
2

首先,str不是一个有效的属性,考虑使用data-str

你可以这样做

if($('a').attr('data-str') == 10) {
    $('a').addClass('add_class');
}

演示


确保您使用特定的选择器,这是一个通用的选择器,因此请考虑使用类似.parent a


如果你想要一个纯 CSS 解决方案,你也可以使用attr=value选择器,比如

a[data-str="10"] {
   color: red;
}

这不会将类添加到您的元素,但您可以使用上面的选择器定位它。

于 2013-10-10T06:09:25.627 回答
1
$('a[str=10]').removeClass('old').addClass('new');
于 2013-10-10T06:08:59.050 回答
1

尝试这个

$('a[str=10]').removeClass('oldClass').addClass('newClass');
$('a[str!=10]').removeClass('newClass').addClass('OldClass');
于 2013-10-10T06:26:59.130 回答