伍佰目录 短网址
  当前位置:海洋目录网 » 站长资讯 » 站长资讯 » 文章详细 订阅RssFeed

radio或者checkbox使用jquery的attr(checked)一直为undefined

来源:网络转载 浏览:62次 时间:2022-11-21

问题:

使用$('#checkbox').attr('checked'); 返回的是checked或者是undefined,不是原来的true和false了,而且无论怎么切换单选按钮,checkbox的attr始终不发生改变。


原因:

在jquery1.6+之后,返回的都是checked或undefined,之前返回的true/false都是1.5-的做法哈。

附:jQuery判断checked的三种方法:
.attr('checked'): //看版本1.6+返回:"checked"或"undefined" ;1.5-返回:true或false
.prop('checked'): //16+:true/false
.is(':checked'): //所有版本:true/false//别忘记冒号哦

并且attr('checked')在页面初始化的时候已经初始化好了,不会随着状态的改变而改变,在页面初始化的时候是什么值,之后无论怎么切换单选按钮都不改变。所以如果checkbox一开始是选中的,那么返回的是checked,如果一开始没被选中,则返回的是undefined。


解决办法:

如果要使用jquery修改当前单选按钮的状态,.attr(‘checked’)是行不通的,因为无论怎么改它的值始终都不会变。这时候需要修改.prop('checked') (jquery1.6以后才支持prop的哦)

<input id="cb1" type="checkbox" checked />  
<input id="cb2" type="checkbox" checked="checked" />
//jquery1.6+:prop的4种赋值:  
 $("#cb1").prop("checked",true);//很简单就不说了哦  
 $("#cb1").prop({checked:true}); //map键值对  
 $("#cb1").prop("checked",function(){  
     return true;//函数返回true或false  
 });  
  
$("#cb1").prop("checked","checked");


  推荐站点

  • At-lib分类目录At-lib分类目录

    At-lib网站分类目录汇集全国所有高质量网站,是中国权威的中文网站分类目录,给站长提供免费网址目录提交收录和推荐最新最全的优秀网站大全是名站导航之家

    www.at-lib.cn
  • 中国链接目录中国链接目录

    中国链接目录简称链接目录,是收录优秀网站和淘宝网店的网站分类目录,为您提供优质的网址导航服务,也是网店进行收录推广,站长免费推广网站、加快百度收录、增加友情链接和网站外链的平台。

    www.cnlink.org
  • 35目录网35目录网

    35目录免费收录各类优秀网站,全力打造互动式网站目录,提供网站分类目录检索,关键字搜索功能。欢迎您向35目录推荐、提交优秀网站。

    www.35mulu.com
  • 就要爱网站目录就要爱网站目录

    就要爱网站目录,按主题和类别列出网站。所有提交的网站都经过人工审查,确保质量和无垃圾邮件的结果。

    www.912219.com
  • 伍佰目录伍佰目录

    伍佰网站目录免费收录各类优秀网站,全力打造互动式网站目录,提供网站分类目录检索,关键字搜索功能。欢迎您向伍佰目录推荐、提交优秀网站。

    www.wbwb.net