jq checked 设置问题

前两天写一页面 需做一单选按钮。设置如下

    $(".design p").bind("click",function() {             
        $(".design p").removeClass("checked");            
     $(this).addClass("checked").children("input").attr("checked",true); });

然后坑爹的来了,切换一两次是生效的。然后就没有然后了。后面发现用prop替换attr就正常了。

    $(".design p").bind("click",function(){             
        $(".design p").removeClass("checked");
        $(this).addClass("checked").children("input").prop("checked",true);

    });

查了下资料,自己反复试了下,get一经验:

处理元素本身就带有的固有属性时使用prop方法。处理html元素我们自己自定义的DOM属性,在处理时,使用attr方法。

这个很好理解。如input上的 type,a上面的href,img上面的alt 等固有属性处理就直接用prop。处理class,data-*等自己新建的属性就用attr。

ok,下课。

posted @ 2016-04-02 23:43  xiaoye1990  阅读(357)  评论(0编辑  收藏  举报