扫二维码与项目经理沟通
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流
//全选/取消,反选,参数是多选框id和包含选框的块级元素id
蚌山ssl适用于网站、小程序/APP、API接口等需要进行数据传输应用场景,ssl证书未来市场广阔!成为创新互联的ssl证书销售渠道,可以享受市场价格4-6折优惠!如果有意向欢迎电话联系或者加微信:18982081108(备注:SSL证书合作)期待与您的合作!
function
checkAll(id,divId){
$this
=
$("#"+id);
$divId
=
$("#"+divId);
if($this.attr('checked')==false){
$divId.find("input[type='checkbox']").attr(
'checked',false
);
}else{
$divId.find("input[type='checkbox']").attr(
'checked',true
);
}
};
function
checkChange(divId){
$divId
=
$("#"+divId);
$divId.find("input[type='checkbox']").each(function(){
if($(this).attr('checked')==true){
$(this).attr(
'checked',false
);
}else{
$(this).attr(
'checked',true
);
};
});
};
//全选/取消,反选,参数是多选框id和同一范围内checkbox的name
function
checkAllByName(id,name){
$this
=
$("#"+id);
if($this.attr('checked')==false){
$("input[type='checkbox'][name='"+name+"']").attr('checked',false);
}else{
$("input[type='checkbox'][name='"+name+"']").attr('checked',true);
}
};
function
checkChangeByName(name){
$("input[type='checkbox'][name='"+name+"']").each(function(){
if($(this).attr('checked')==true){
$(this).attr(
'checked',false
);
}else{
$(this).attr(
'checked',true
);
};
});
};
jquery操作复选框(checkbox)的12个小技巧。
1、获取单个checkbox选中项(三种写法)
$("input:checkbox:checked").val()
或者
$("input:[type='checkbox']:checked").val();
或者
$("input:[name='ck']:checked").val();
2、 获取多个checkbox选中项
$('input:checkbox').each(function() {
if ($(this).attr('checked') ==true) {
alert($(this).val());
}
});
3、设置第一个checkbox 为选中值
$('input:checkbox:first').attr("checked",'checked');
或者
$('input:checkbox').eq(0).attr("checked",'true');
4、设置最后一个checkbox为选中值
$('input:radio:last').attr('checked', 'checked');
或者
$('input:radio:last').attr('checked', 'true');
5、根据索引值设置任意一个checkbox为选中值
$('input:checkbox).eq(索引值).attr('checked', 'true');
索引值=0,1,2....
或者
$('input:radio').slice(1,2).attr('checked', 'true');
6、选中多个checkbox同时选中第1个和第2个的checkbox
$('input:radio').slice(0,2).attr('checked','true');
7、根据Value值设置checkbox为选中值
$("input:checkbox[value='1']").attr('checked','true');
8、删除Value=1的checkbox
$("input:checkbox[value='1']").remove();
9、删除第几个checkbox
$("input:checkbox").eq(索引值).remove();
索引值=0,1,2....
如删除第3个checkbox:
$("input:checkbox").eq(2).remove();
10、遍历checkbox
$('input:checkbox').each(function (index, domEle) {
//写入代码
});
11、全部选中
$('input:checkbox').each(function() {
$(this).attr('checked', true);
});
12、全部取消选择
$('input:checkbox').each(function () {
$(this).attr('checked',false);
});
JQuery对CheckBox的一些相关操作
一、通过选择器选取CheckBox:
1.给CheckBox设置一个id属性,通过id选择器选取:
input type="checkbox" name="myBox" id="chkOne" value="1" checked="checked" /
JQuery:
$("#chkOne").click(function(){});
2.给CheckBox设置一个class属性,通过类选择器选取:
input type="checkbox" name="myBox" class="chkTwo" value="1" checked="checked" /
JQuery:
$(".chkTwo").click(function(){});
3.通过标签选择器和属性选择器来选取:
input type="checkbox" name="someBox" value="1" checked="checked" /
input type="checkbox" name="someBox" value="2" /
JQuery:
$("input[name='someBox']").click(function(){});
二、对CheckBox的操作:
以这段checkBox代码为例:
input type="checkbox" name="box" value="0" checked="checked" /
input type="checkbox" name="box" value="1" /
input type="checkbox" name="box" value="2" /
input type="checkbox" name="box" value="3" /
1.遍历checkbox用each()方法:
$("input[name='box']").each(function(){});
2.设置checkbox被选中用attr();方法:
$("input[name='box']").attr("checked","checked");
在HTML中,如果一个复选框被选中,对应的标记为 checked="checked"。 但如果用jquery alert($("#id").attr("checked")) 则会提示您是"true"而不是"checked",所以判断 if("checked"==$("#id").attr("checked")) 是错误的,应该是 if(true == $("#id").attr("checked"))
3.获取被选中的checkbox的值:
$("input[name='box'][checked]").each(function(){
if (true == $(this).attr("checked")) {
alert( $(this).attr('value') );
}
或者:
$("input[name='box']:checked").each(function(){
if (true == $(this).attr("checked")) {
alert( $(this).attr('value') );
}
$("input[name='box']:checked")与 $("input[name='box']")有何区别没试过,我试了用 $("input[name='box']")能成功。
4.获取未选中的checkbox的值:
$("input[name='box']").each(function(){
if ($(this).attr('checked') ==false) {
alert($(this).val());
}
});
5.设置checkbox的value属性的值:
$(this).attr("value",值);
三、 一般都是创建一个js数组来存储遍历checkbox得到的值,创建js数组的方法:
1. var array= new Array();
2. 往数组添加数据:
array.push($(this).val());
3.数组以“,”分隔输出:
alert(array.join(','));
有两种方法,
①:点击事件;如:
input type="checkbox" class="ck" /
$(".ck").click();
这样就能设置复选框选中;
②:设置其checked属性;如:
input type="checkbox" class="ck" /
$(".ck").prop("checked",true);
这样就设置复选框选中
首先 你要分清Jquery中 prop和attr 的区别
借鉴网站
我举一个例子 就是全选/反选的情况 如果你是用jquery中的attr来进行选中的话 第一次可以选中 但当你第二次点击全选的时候 就没有反应了 子复选框 不会有任何反应
但是如果你用的是prop 就没有这么多顾虑了 直接使用就可以 废话不多说 直接贴代码验证
body
div class="panel"
div class="panel-body"
input type="checkbox" id="chkAll" /全选
ul
liinput type="checkbox" id="chkName1" name="chkFruit" /苹果/li
liinput type="checkbox" id="chkName2" name="chkFruit" /香蕉/li
liinput type="checkbox" id="chkName3" name="chkFruit" /桃子/li
liinput type="checkbox" id="chkName4" name="chkFruit" /荔枝/li
/ul
/div
/div
/body
script type="text/javascript"
$(function () {
//全选
$("#chkAll").change(function () {
$("input[name='chkFruit']").prop("checked", $(this).prop("checked")); //成功
$("input[name='chkFruit']").attr("checked", $(this).prop("checked")); //第一次选中成功 第二次 子复选框没有反应
});
//全部选中
//$("input[name='chkFruit']").prop("checked", "checked");
//eq(index) Index索引从0开始 选中第一个
//$("input[name='chkFruit']").eq(0).prop("checked", "checked");
});
/script
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流