ChaoBaby94 2016-02-17 01:45 采纳率: 0%
浏览 1272
已采纳

jQuery点击复选框问题

问题一:
网上和教学视频都说
$('input[name="items"]').attr("checked","");
是设置为没有被选中。但是我的点击后还是变成checked状态。
把教学视频的代码完全复制了下,只是导入的jquery版本不一样。结果他的可以,我的不可以。是jquery版本的问题吗?我的是jquery-2.1.4 视频的是jquery-1.3.1
问题二:
看的视频是练习全选/全不选的checkbox的操作,代码如下
$('#checkedAll_2').click(function(){
// checked属性判断有没被选中
if(this.checked){
// $('input[name="items"]:checkbox').attr("checked","true");
$('input[name="items"]').attr("checked","true");
$.each($('input[name="items"]'),function(){
alert($(this).val()+":"+this.checked);
});
} else{
$("input[name='items']").attr("checked","");

// $("input[name='items']").removeAttr("checked");
$.each($('input[name="items"]'),function(){
alert($(this).val()+":"+this.checked);
});
}
});
当已选中的状态再次点击变成未选中时(执行else语句),里面的$(this).val()的值就变成了undefined了。这是为什么?
问题三:还是上面的代码。(和问题一有关)
用$("input[name='items']").attr("checked",""); 不能改为不选,只有$("input[name='items']").removeAttr("checked"); 方法可以。这是为什么!

  • 写回答

2条回答 默认 最新

  • Go 旅城通票 2016-02-17 01:55
    关注

    1.6+以上jquery 设置checked这种需要用prop,不要用attr,jquery attr prop 区别

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥20 蓝牙耳机怎么查看日志
  • ¥15 Fluent齿轮搅油
  • ¥15 八爪鱼爬数据为什么自己停了
  • ¥15 交替优化波束形成和ris反射角使保密速率最大化
  • ¥15 树莓派与pix飞控通信
  • ¥15 自动转发微信群信息到另外一个微信群
  • ¥15 outlook无法配置成功
  • ¥30 这是哪个作者做的宝宝起名网站
  • ¥60 版本过低apk如何修改可以兼容新的安卓系统
  • ¥25 由IPR导致的DRIVER_POWER_STATE_FAILURE蓝屏