jquery操作checkbox,诡异

今天这样写了一个全选和取消全选的功能:

全选:$(":checkbox").attr("checked","checked");

取消全选:$(":checkbox").removeAttr("checked");

获取选中的:$(":checked[checked=‘checked‘]")

发现点全选可以,在点取消全选也可以,获取选中的失效,接下来再点任何按钮都没有效果了

这样行不通,我也不太清楚什么原因,脚本语言就这毛病,一边灵活一边诡异,也不去找原因了,后来改成这样写

全选: $(":checkbox").prop("checked",true)

取消全选:$(":checkbox").prop("checked",false)

获取选中的:$(":checkbox:checked")

反选:$(":checkbox").each(function(){

if($(this).prop("checked")){

$(this).prop("checked",false);

}else{

$(this).prop("checked",true);

}

});

jquery操作checkbox,诡异,布布扣,bubuko.com

时间: 2024-10-22 08:09:29

jquery操作checkbox,诡异的相关文章

解决jquery操作checkbox全选全不选无法勾选问题

最近在学习中使用jquery操作checkbox,使用下面方法进行全选.反选:$("input[name='checkbox']").attr("checked","checked");调试时,前两次都没有问题,可以正常显示选中和取消,但当再去选中的时候,复选框的属性checkbox值变为"checked",没问题,但是复选框却不在显示选中状态,明明属性值改了,但是却不显示勾选,太诡异了.代码修改了却得不到正确的显示状态,纠结

jQuery操作checkBox(多选框)

问题:工作中要用到jQuery操作多选框(checkbox)的知识,就把以前记录及笔记找了出来直接用,但是问题出现了,取消选择之后,再次选中指定的多选框,用浏览器看(F12)是加上了checked属性,但是页面显示没有选中(没有打勾),这里把解决问题的方法总结一下. 下面给出一种解决方案(使用的jQuery版本2.1.3): 1.静态页面CheckBox.html(注意:必须要在check标签里面加上select属性) <!DOCTYPE html> <html> <head

JQuery操作CheckBox 第二次无法选中的问题

用JQuery做CheckBox全选和反选的时候,遇到一个问题.当用JQ控制全选,全取消一次以后,再次点击全选,发现代码变了,但是CheckBox没有处于选中状态. 百度后得知: 我使用的方法是 $("#id").attr("checked",true); 方式,jQuery API明确说明,1.6+的jQuery要用prop,尤其是checkBox的checked的属性的判断.因此修改为 $("input[type='checkbox']").

JQuery 操作 checkbox 二次赋值无效 attr ----&gt; prop

CheckBox .attr('checked',false);  Chrome和火狐第二次点击无效. 然后解决了把attr 改成了 prop 以后操作属性的时候各位记下,用prop 因为大家用的都是 jQuery 1.6+ 了! if(black.use_type == 1){ $("#use-type1").prop("checked",true); $("#use-type2").prop("checked",false

jquery 操作checkbox只能使用一次

进来开发中碰到一个比较奇怪的问题,就是用jquery控制界面中的checkbox全选和全不选的时候, 只能第一次成功使用不能重复操作. 代码如下: 全选 $('input:checkbox').each(function(){     $(this).attr('checked',true); }); 全不选 $('input:checkbox').each(function(){     $(this).attr('checked',false); }); 在网上查说是jquery1.8以上存

jquery操作checkbox火狐下第二次无法勾选问题

原来的代码: $('#checkAll').click(function(){ var current = $(this) $('.checkbox').each(function(){ debugger; if(current.is(':checked')) { $(this).attr('checked', true); } else { $(this).attr('checked', false); } }); }) 这样在firefox和chrome浏览器下第二次勾选时,属性改变了,页面

解决jQuery操作checkbox第二次失效的问题

$("#selectInverse").click(function(){ $(":checkbox").each(function(){ $(this).attr("checked",!$(this).attr("checked")); }) }); 困扰多时的checkbox二次选择失败问题原来是jquery版本升值的问题.和人一样,老了问题就来了. 1.6+的jQuery要用 prop,替代 attr 尤其是checkB

jQuery操作CheckBox的方法(选中,取消,取值)详解

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> <HTML> <HEAD> <TITLE> New document.nbsp;</TITLE> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> <SCR

jQuery操作checkbox

2012欧洲杯"死亡之组"小组出线的国家队是:<br> <inputtype="checkbox"name="nation"value="Germany">德国 <inputtype="checkbox"name="nation"value="Denmark">丹麦 <inputtype="checkbox"