在按钮上单击jquery显示非唯一的div类

时间:2016-05-16 06:45:16

标签: javascript jquery html

我想在按下按钮时显示.unhideme的div类。这个类是动态生成的,因此有多个具有相同类名的div。使用JQuery如何正确显示此块?

<div id="negativeButtons">
 <div class="unhideme" name="unhideme" style="display:none">
  <h3>Comments</h3>
  <textarea name="unhappymanager" id="unhappymanager"></textarea>
 </div>
<input type="submit" class="excused" name="negativexcused" value="Excused">
<input type="button" class="unexcused" name="unexcused" value="Unexcused">
<input type="submit" class="commentpushDB" name="commentpushDB" style="display:none" value="Submit">
</div>

这里我有jquery适用于其他按钮,但我似乎无法找到一个显示div的函数。

$(document).ready(function() {
 $(".unexcused").click(function() {
  $(this).closest(".unhideme").show();
  $(this).closest(".unexcused").hide();
  $(this).prev(".excused").hide();
  $(this).next(".commentpushDB").show();
 });
});

1 个答案:

答案 0 :(得分:2)

相反,您必须使用.siblings()方法:

$(".unexcused").click(function() {
  $(this).siblings(".unhideme").show();
  $(this).siblings(".unexcused").hide(); // <---- ?? why hide the buttons.
  $(this).prev(".excused").hide();
  $(this).next(".commentpushDB").show();
});

这是因为按钮和div是兄弟姐妹而不是父母。