.next()和.addClass()在jquery中不起作用

时间:2012-04-24 07:46:35

标签: jquery

以下朋友以下是我的代码

HTML

 <ul>
    <li>
    <div class="input"><input name="" type="checkbox" value="" id="a"/></div>
    <div >Name of the survey goes here | 35 Points - <span>Begin Survey</span></div> 
    </li>
</ul>

Jquery的

<script>
$(document).ready(function(){

    $('#a').click(function(){

    $(this).next('div').addClass('.check_clicked');

    })
})
</script>

CSS

.check_clicked
{
    text-decoration:line-through;
    color:#b6a7a7;
}

我只想检查复选框值,然后类.check_clicked应该适用于下一个div

1 个答案:

答案 0 :(得分:5)

.next()访问下一个兄弟。但是,您的#a元素没有。

你想要的是$(this).parent().next()

您还需要删除班级名称中的. - addClass()只接受班级,因此在班级名称前不需要.

这是一个有效的演示:http://jsfiddle.net/DqLRc/
如果取消选中该复选框,则不应再次删除该课程,只需保留addClass来自toggleClass的{​​{1}}个实例。