从一个div中选择数据属性,将类添加到具有相同数据属性值的另一个div

时间:2017-03-02 11:32:53

标签: jquery

我有两个具有相同数据属性的div:

$("#devMap div").click(function(){
    var data = $(this).attr('data-name');

    alert(data); //this is getting the correct data-name value

    if($('#accordian .blocks').data('name')===data){    
        $(this).toggleClass('active'); // i want this to add the class active to the #accordian .blocks which has the data-name equal to the #devMap div data-name value
    }
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"></script>
<div id="devMap">
        <div class="toggleAccordian" data-name="block1"></div>
        <div class="toggleAccordian" data-name="block2"></div>
    </div>

    <div id="accordian">
        <div class="blocks" data-name="block1"></div>
        <div class="blocks" data-name="block2"></div>
    </div>

我希望当用户点击on #devMap .toggleAccordian时,它会在#accordian下的同一数据名称属性上切换一个类,我试过这个:

1 个答案:

答案 0 :(得分:0)

您可以使用attribute equal selector获取属性数据名称等于当前数据名称的所有.block元素:

$('#accordian .blocks[data-name="'+data+'"]').toggleClass('active');