Jquery 不是数据选择器
Jquery not data selector
这个有效
$('[data-department='+dept+']').closest('.person').hide();
所以希望这 show/hide 未选择的元素。
$('[data-department !='+dept+']').closest('.person').hide();
它没有按预期工作。即使是硬编码。
$('[data-department!=8]').closest('.person').hide();
$('[data-department !='+dept+']')
将 select 元素甚至那些没有任何 data-department
属性的元素作为 A。沃尔夫说。所以你可以像下面这样使用filter()
方法。
$('[data-department]').filter(function() {
return $(this).data('department') != 8;
}).closest('.person').hide();
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="person">
<div data-department="8">
8888888888888888
</div>
</div>
<div class="person">
<div data-department="9">
9999999999999999
</div>
</div>
<div class="person">
<div data-department="10">
1010101010101010
</div>
</div>
这个有效
$('[data-department='+dept+']').closest('.person').hide();
所以希望这 show/hide 未选择的元素。
$('[data-department !='+dept+']').closest('.person').hide();
它没有按预期工作。即使是硬编码。
$('[data-department!=8]').closest('.person').hide();
$('[data-department !='+dept+']')
将 select 元素甚至那些没有任何 data-department
属性的元素作为 A。沃尔夫说。所以你可以像下面这样使用filter()
方法。
$('[data-department]').filter(function() {
return $(this).data('department') != 8;
}).closest('.person').hide();
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="person">
<div data-department="8">
8888888888888888
</div>
</div>
<div class="person">
<div data-department="9">
9999999999999999
</div>
</div>
<div class="person">
<div data-department="10">
1010101010101010
</div>
</div>