在没有每个循环的情况下选择具有特定数据属性的div

时间:2017-06-05 08:15:46

标签: jquery

<div class='bwrap' data-x='home01'></div>
<div class='bwrap hidden' data-x='home02'></div>
<div class='bwrap hidden' data-x='home03'></div>
<div class='bwrap hidden' data-x='home04'></div>

我希望在没有.bwrap循环的情况下data-x='home04'显示each 根据{{​​3}}我试过:

JS

var obj = $('.bwrap[data-x="home04"]');
obj.show();

什么都没发生。

2 个答案:

答案 0 :(得分:2)

如果符合以下条件,您的代码工作正常: -

1.jQuery库在您的脚本代码之前添加。

2.code包含在$(document).ready(function(){...});

3.由于div没有文字,这就是为什么你可能会混淆它没有显示的原因。在该div中添加一些文本并检查。

工作示例: -

$(document).ready(function(){
  var obj = $('.bwrap[data-x="home04"]');
  obj.show();
  //can change in one-liner like :- $('.bwrap[data-x="home04"]').show();
});
.hidden{
  display:none;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script><!-- jQuery library needed-->
<div class='bwrap' data-x='home01'>01</div><!-- added text to show that your code worked-->
<div class='bwrap hidden' data-x='home02'>02</div><!-- added text to show that your code worked-->
<div class='bwrap hidden' data-x='home03'>03</div><!-- added text to show that your code worked-->
<div class='bwrap hidden' data-x='home04'>04</div><!-- added text to show that your code worked-->

答案 1 :(得分:0)

仅显示(表示删除hidden类)

您可以执行以下操作

$('.bwrap[data-x="home04"]').show();