我很难改变class=like
范围内的所有<div class="h2" data-id="9">
范围的类(仅适用于此示例。页面上还有更多)。
我需要这样$('.h2[data-id="9"]')
,因为我需要选择特定的div
。
在这种情况下,如何将所有class
的{{1}}更改为其他内容。我似乎无处可去。如果你看下面的代码,你会看到我想要实现的目标。
你能帮忙吗?
class=like
我的success: function(data){
// Remove class like, add class no-link
$('.like[data-id="'+data+'"]').removeClass('like').addClass('no-like');
//For this example
$('.h2[data-id="9"]').siblings().removeClass('like').addClass('grey');
},
<div>
答案 0 :(得分:1)
试一试:
function classReplace(data,replacementClass) {
//$('.h2[data-id="' + data + '"]').children('div').children('span[data-sec="' + data + '"]').removeClass('like').addClass(replacementClass);
$('.h2[data-id="'+ data +'"]').children('div').children('span.like').removeClass('like').addClass(replacementClass);
};
classReplace(9,'hide');
只需传入您要替换的数据ID。
答案 1 :(得分:1)
siblings
方法选择所选元素的兄弟元素,目标元素是所选div
元素的后代,您应该使用.find()
方法:
$('.h2[data-id="'+ data +'"]').find('span.like')
.removeClass('like')
.addClass('grey');