判断 radio 是否被选中
$(selector).is(':checked');
返回结果:如果 alert 会提示 2 次:
第一次,是未改变之前的值,如果之前未选中,那就是 false ;
第二次,是改变后的值,如果之前未选中,那就是 true ;
如果做判断,那就好判断是否是 true ;
如果要改变 checked 状态 , 要用:
设置为选中:
$(selector).attr('checked','checked');
设置为未选中:
$(selector).removeAttr('checked');
一个有趣的现象:
当你的 radio,如果没有 checked 属性,类似如下:
<input type='text' value='test' />
.is(':checked') 是可以用的,但 $(selector).attr('checked'),返回值是 undefined
结语:
也就是说,改变 radio checked 状态有 2 种方式:
- 一种是通过 checked 属性来操作;
- 一种是通过底层某种方式,默认的方式就是这种方式,但貌似知道的人比较少(我也不知道);
网友评论