本文主要和大家分享checkbox的选中和取消attr()和 prop()详解,首先要明确,CheckBox是否被勾选中,和input的checked这个attribute是否="checked"是没有直接关系的。
一个没有写相关js函数的input:checked,你只能控制它是否被选中,如上图所示。
$('.modal-body input:checked')
如上代码,这个jquery选择器能找到第二个input,但是能找到,与它的attitude:checked并没有关系。
如果想通过是否勾选来控制checked这个attitude,那么需要加如下代码:
$('.modal-body thead').on('click','input',function(){ if($(this).attr('checked')=='checked'){ $(this).removeAttr("checked"); }else{ $(this).attr("checked", "true"); } });
如果你还想其他dom元素的事件来控制,是否选中和attitude,那么需要加如下代码:
$('.modal-body thead').on('change','select',function(){ $(this).parent().find('th input').prop('checked','checked'); $(this).parent().find('th input').attr('checked','checked'); });
其中使用prop函数,是为了控制是否选中。如果没有使用,那么input元素不会被选中,但是attitude的值会变。
其实,实际上不用在意checked这个attitude,因为jquery选择器在意的是是否选中,而不是attitude的值。
但当需要用其他dom元素的事件来触发,使得CheckBox被选中时,就需要使用prop函数了。因为用户在意的是视觉,而不是通过控制台看attitude的值。
相关推荐:
以上是checkbox的选中和取消attr()和 prop()详解的详细内容。更多信息请关注PHP中文网其他相关文章!