jquery过滤 - 根据它的data-id返回div

时间:2013-02-16 14:19:08

标签: jquery jquery-ui jquery-plugins jquery-selectors jquery-filter

我正在尝试用 class ='selectthis'选择每个div并返回他们的兄弟div (也让它们不可拖动)如果父div data-id 不等于 0

这是小提琴: http://jsfiddle.net/umvQJ/1/

这是我的代码:

<div class="selectthis" data-id="0">
     <div class='draggable'>don't return this</div>
</div>

<div class="selectthis" data-id="1">
     <div class='draggable'>return this</div>
</div>

<div class="selectthis" data-id="2">
     <div class='draggable'>return this</div>
</div>
$(document).ready(function() {
    $('.draggable').draggable();

    $(".selectthis").filter(function () { 
        return $(this[data-id!=="0"]).siblings(div); 
    }).draggable({revert: 'invalid'});
});

我在哪里做错了?

2 个答案:

答案 0 :(得分:1)

我想这就是你需要的。

$(document).ready(function () {
    $(".selectthis").not('[data-id="0"]').find('.draggable').draggable();
});

http://jsfiddle.net/umvQJ/2/

答案 1 :(得分:0)

试试这个:

$(document).ready(function () {
    $(".selectthis").filter(function () {
        return $(this).data('id') == 0
    }).siblings('div').draggable({
        revert: 'invalid'
    });
});

演示:http://jsfiddle.net/umvQJ/3/