1.赋值
<div class="layui-form-item QDmrgbottom10"> <label class="layui-form-label QDTLW"><i>*</i>监管形式</label> <div class="layui-input-block" style="float: left;width: 10px;margin-left: -10px; display: none;" id="superviseMeasure01Div"> <input type="checkbox" name="superviseMeasureArr[]" value="01"disabled="disabled" id="superviseMeasure01"lay-skin="primary" title="日常检查" lay-filter="superviseMeasure"> </div> <div class="layui-input-block " style="float: left;width: 10px;display: none;" id="superviseMeasure02Div"> <input type="checkbox" name="superviseMeasureArr[]" value="02"disabled="disabled" id="superviseMeasure02"lay-skin="primary" title="专项检查" lay-filter="superviseMeasure"> </div> <div class="layui-input-block " style="float: left;width: 10px;display: none;" id="superviseMeasure99Div"> <input type="checkbox" name="superviseMeasureArr[]" value="99" disabled="disabled" id="superviseMeasure99"lay-skin="primary" title="其他" lay-filter="superviseMeasure"> </div> <div class="layui-input-block" style="float: left;width: 10px;margin-left: -10px; " id="superviseMeasure03Div"> <input type="checkbox" name="superviseMeasureArr[]" value="03" disabled="disabled"id="superviseMeasure03"lay-skin="primary" title="无" lay-filter="superviseMeasure"> </div> </div>
动态赋值让复选框选中
for(var i =0 ;i<superviseMeasureArry.length;i++){ body.find("#superviseMeasure"+superviseMeasureArry[i]).attr('checked', true); }
2.取值
//HTML代码
<form class="layui-form"> <div class="layui-form-item"> <label class="layui-form-label">复选框</label> <div class="layui-input-block"> <input type="checkbox" name="like" value="1" title="写作"> <input type="checkbox" name="like" value="2" title="阅读" > <input type="checkbox" name="like" value="3" title="发呆"> </div> </div> <div class="layui-form-item"> <div class="layui-input-block"> <button class="layui-btn" lay-submit lay-filter="formDemo">立即提交</button> <button type="reset" class="layui-btn layui-btn-primary">重置</button> </div> </div> </form>
//JS代码
<script> layui.use('form', function(){ var form = layui.form; form.on('submit(formDemo)', function(data){ //获取checkbox[name='like']的值 var arr = new Array(); $("input:checkbox[name='like']:checked").each(function(i){ arr[i] = $(this).val(); }); data.field.like = arr.join(",");//将数组合并成字符串 $.post("admin.php", {data:data.field}, function (res) { if (res.code == 1) { layer.msg(res.msg, {time: 1800, icon: 1}, function () { location.href = res.url; }); } else { layer.msg(res.msg, {time: 1800, icon: 2}); } }, 'json'); return false; }); }); </script>
3.jq 的基本使用
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(','));
JQuery对CheckBox的一些相关操作
一、通过选择器选取CheckBox:
1.给CheckBox设置一个id属性,通过id选择器选取:
1 |
< input type = "checkbox" name = "myBox" id = "chkOne" value = "1" checked = "checked" />
|
JQuery:
1 |
$( "#chkOne" ).click( function (){});
|
2.给CheckBox设置一个class属性,通过类选择器选取:
1 |
< input type = "checkbox" name = "myBox" class = "chkTwo" value = "1" checked = "checked" />
|
JQuery:
1 2 |
$( ".chkTwo" ).click( function (){});
|
3.通过标签选择器和属性选择器来选取:
1 2 |
< input type = "checkbox" name = "someBox" value = "1" checked = "checked" />
< input type = "checkbox" name = "someBox" value = "2" />
|
JQuery:
1 2 |
$( "input[name='someBox']" ).click( function (){});
|
二、对CheckBox的操作:
以这段checkBox代码为例:
1 2 3 4 |
< 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()方法:
1 |
$( "input[name='box']" ).each( function (){});
|
2.设置checkbox被选中用attr();方法:
1 2 |
$( "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的值:
1 2 3 4 |
$( "input[name='box'][checked]" ).each( function (){
if ( true == $( this ).attr( "checked" )) {
alert( $( this ).attr( 'value' ) );
}
|
或者:
1 2 3 4 |
$( "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的值:
1 2 3 4 5 |
$( "input[name='box']" ).each( function (){
if ($( this ).attr( 'checked' ) == false ) {
alert($( this ).val());
}
});
|
5.设置checkbox的value属性的值:
1 |
$( this ).attr( "value" ,值);
|
三、 一般都是创建一个js数组来存储遍历checkbox得到的值,创建js数组的方法:
1. var array= new Array();
2. 往数组添加数据:
array.push($(this).val());
3.数组以“,”分隔输出:
alert(array.join(','));