Jquery 查找下一个元素并删除类
当用户从选择框(select class=“songSelection\u input”)中选择一个选项时,我想删除span(span class=“vote btns”)内链接上的一个类 我不知道选择框(它是动态的)和投票BTN span之间有多少跨距,所以我知道为什么下一个('span')不起作用,但我认为指定下一个span.vote-BTN可以起作用,但它不起作用 更新:为了简化我的问题,我应该将其作为html包含,但没有。兄弟姐妹最初确实解决了我的问题,但我意识到我使用的jquery selectbox插件注入了html(span jquery selectbox项并隐藏了selectbox) 当我禁用selectbox jquery插件时,它工作正常: 尝试使用:Jquery 查找下一个元素并删除类,jquery,html,Jquery,Html,当用户从选择框(select class=“songSelection\u input”)中选择一个选项时,我想删除span(span class=“vote btns”)内链接上的一个类 我不知道选择框(它是动态的)和投票BTN span之间有多少跨距,所以我知道为什么下一个('span')不起作用,但我认为指定下一个span.vote-BTN可以起作用,但它不起作用 更新:为了简化我的问题,我应该将其作为html包含,但没有。兄弟姐妹最初确实解决了我的问题,但我意识到我使用的jquery s
您需要向上遍历DOM一级,然后找到同级。这种方法会有所帮助。试试这个:
$('.songSelection_input').change(function() {
$(this).closest('div').siblings('span.vote-btns').find('a.button').removeClass('grey');
});
演示:我想你应该使用。兄弟姐妹(“span”)谢谢,这很管用,我的错是没有包括真实世界的html,我只是包括了一个简化的html片段,可以比较,你能再看一下吗?
$('.songSelection_input').change(function() {
$(this).next('span.vote-btns').find('a.button').removeClass('grey');
});
$('.songSelection_input').change(function() {
$(this).siblings('span.vote-btns').find('a.button').removeClass('grey');
});
$('.songSelection_input').change(function() {
$(this).closest('div').siblings('span.vote-btns').find('a.button').removeClass('grey');
});