div中的遍历元素

时间:2013-09-03 16:46:01

标签: javascript jquery html css

HTML:

<div style="width: 260px;margin:25px 0 0 30px">
<input type="checkbox"  name="send_email" class="delete_followup" />Send email alerts
<input type="checkbox" value="delete" type="checkbox" />Send SMS alerts <button type="submit" name="delete" value="{{follower.id}}" class="delete_follower">Delete</button>
</div>

JS:

$(".delete_followup").click(function(){
var $this = $(this);
$(this).find(".delete_follower").show();           
});

我想在点击delete_followup class.i上面显示隐藏按钮。我已经尝试过jQuery但是没有工作。

4 个答案:

答案 0 :(得分:1)

delete_follower元素不是delete_followup元素的后果,它是兄弟元素,因此您需要使用find()而不是siblings()

$(".delete_followup").click(function(){
    var $this = $(this);
    $this.siblings(".delete_follower").show();           
});

答案 1 :(得分:1)

或尝试.nextAll

$(this).nextAll(".delete_follower").show();

在此工作:http://jsfiddle.net/tw5XK/

答案 2 :(得分:1)

试试这个:

$(".delete_followup").click(function () {
    if (this.checked) {
        $(this).siblings(".delete_follower").show();
    } else {
        $(this).siblings(".delete_follower").hide();
    }
});

演示here

答案 3 :(得分:1)

当您已经拥有对所需元素的引用时,您正试图向下搜索div。让它变得比它需要的更复杂lol

$(".delete_followup").click(function(){
   $(this).show();           
});

每当您触发click事件时,单击的实际元素将作为函数的范围传递。由于您触发了“.delete_followup”的点击,因此该div是您的元素范围