找到任何具有匹配类的兄弟

时间:2014-05-01 19:34:45

标签: javascript jquery twitter-bootstrap jquery-selectors

我有一个带按钮的工具栏。只有一个按钮有班级' btn-info'例如,表明它当前已被选中。

但它可能不是' btn-info',它可能是btn-anything。

如果我单击工具栏中的任何按钮,我想知道匹配的类在哪个按钮上被选中。

我试过了:

$('.btn-toggle-group .btn').click(function(){
    var selectedClass = $(this).siblings('button[class^="btn-"]').prop('class')
    $('.btn-toggle-group .btn').removeClass('btn-info btn-primary btn-danger btn-success btn-warning btn-default')
})

和...

$('.btn-toggle-group .btn').click(function(){
    var selectedClass = $(this).parent().find('[class^="btn-"]').prop('class')
    $('.btn-toggle-group .btn').removeClass('btn-info btn-primary btn-danger btn-success btn-warning btn-default')
})

但无济于事。

我怎样才能做到这一点? Jquery或纯Javascript中的解决方案很好(Javascript是首选,因为它是原生的,更快)。


 <div class="btn-group btn-toggle-group">
            <button type="button" class="btn btn-info">Current</button>
            <button type="button" class="btn">Deleted</button>
        </div>

2 个答案:

答案 0 :(得分:0)

我认为您只需切换到.attr('class')而不是.prop('class')。 DOM元素具有属性classNameclassList;如果愿意,你也可以使用它们。

答案 1 :(得分:0)

尝试使用*代替^

$(this).siblings('button[class*="btn-"]').prop('class');