大橙子网站建设,新征程启航
为企业提供网站建设、域名注册、服务器等服务
//所有checkbox跟着全选的checkbox走。 $('[name=items]:checkbox').attr("checked", this.checked );});$('[name=items]:checkbox').click(function(){ //定义一个临时变量,避免重复使用同一个选择器选择页面中的元素,提升程序效率。 var $tmp=$('[name=items]:checkbox'); //用filter方法筛选出选中的复选框。并直接给CheckedAll赋值。 $('#CheckedAll').attr('checked',$tmp.length==$tmp.filter(':checked').length); /* //一行做过多的事情需要写更多注释。复杂选择器还可能影响效率。因此不推荐如下写法。 $('#CheckedAll').attr('checked',!$('[name=items]:checkbox').filter(':not(:checked)').length);*/});//输出值$("#send").click(function(){ var str="你选中的是:\r\n"; $('[name=items]:checkbox:checked').each(function(){ str+=$(this).val()+"\r\n";})alert(str);});});/script/headbodyform method="post" action="" 你爱好的运动是?input type="checkbox" id="CheckedAll" /全选/全不选br/ input type="checkbox" name="items" value="足球"/足球 input type="checkbox" name="items" value="篮球"/篮球 input type="checkbox" name="items" value="羽毛球"/羽毛球 input type="checkbox" name="items" value="乒乓球"/乒乓球br/
我们提供的服务有:成都网站制作、网站设计、外贸网站建设、微信公众号开发、网站优化、网站认证、海晏ssl等。为1000+企事业单位解决了网站和推广的问题。提供周到的售前咨询和贴心的售后服务,是有科学管理、有技术的海晏网站制作公司
1、checkbox日常jquery操作。
现在我们以下面的html为例进行checkbox的操作。
input id="checkAll" type="checkbox" /全选
input name="subBox" type="checkbox" /项1
input name="subBox" type="checkbox" /项2
input name="subBox" type="checkbox" /项3
input name="subBox" type="checkbox" /项4
全选和全部选代码:
script type="text/javascript"
$(function() {
$("#checkAll").click(function() {
$('input[name="subBox"]').attr("checked",this.checked);
});
var $subBox = $("input[name='subBox']");
$subBox.click(function(){
$("#checkAll").attr("checked",$subBox.length == $("input[name='subBox']:checked").length ? true : false);
});
});
/script
checkbox属性:
var val = $("#checkAll").val();// 获取指定id的复选框的值
var isSelected = $("#checkAll").attr("checked"); // 判断id=checkAll的那个复选框是否处于选中状态,选中则isSelected=true;否则isSelected=false;
$("#checkAll").attr("checked", true);// or
$("#checkAll").attr("checked", 'checked');// 将id=checkbox_id3的那个复选框选中,即打勾
$("#checkAll").attr("checked", false);// or
$("#checkAll").attr("checked", '');// 将id=checkbox_id3的那个复选框不选中,即不打勾
$("input[name=subBox][value=3]").attr("checked", 'checked');// 将name=subBox, value=3 的那个复选框选中,即打勾
$("input[name=subBox][value=3]").attr("checked", '');// 将name=subBox, value=3 的那个复选框不选中,即不打勾
$("input[type=checkbox][name=subBox]").get(2).checked = true;// 设置index = 2,即第三项为选中状态
$("input[type=checkbox]:checked").each(function(){ //由于复选框一般选中的是多个,所以可以循环输出选中的值
alert($(this).val());
});
2、radio的jquery日常操作及属性
我们仍然以下面的html为例:
input type="radio" name="radio" id="radio1" value="1" /1
input type="radio" name="radio" id="radio2" value="2" /2
input type="radio" name="radio" id="radio3" value="3" /3
input type="radio" name="radio" id="radio4" value="4" /4
radio操作如下:
$("input[name=radio]:eq(0)").attr("checked",'checked'); //这样就是第一个选中咯。
//jquery中,radio的选中与否和checkbox是一样的。
$("#radio1").attr("checked","checked");
$("#radio1").removeAttr("checked");
$("input[type='radio'][name='radio']:checked").length == 0 ? "没有任何单选框被选中" : "已经有选中";
$('input[type="radio"][name="radio"]:checked').val(); // 获取一组radio被选中项的值
$("input[type='radio'][name='radio'][value='2']").attr("checked", "checked");// 设置value = 2的一项为选中
$("#radio2").attr("checked", "checked"); // 设置id=radio2的一项为选中
$("input[type='radio'][name='radio']").get(1).checked = true; // 设置index = 1,即第二项为当前选中
var isChecked = $("#radio2").attr("checked");// id=radio2的一项处于选中状态则isChecked = true, 否则isChecked = false;
var isChecked = $("input[type='radio'][name='radio'][value='2']").attr("checked");// value=2的一项处于选中状态则isChecked = true, 否则isChecked = false;
3、select下拉框的日常jquery操作
select操作相比checkbox和radio要相对麻烦一些,我们仍然以下面的html为例来说明:
select name="select" id="select_id" style="width: 100px;"
option value="1"11/option
option value="2"22/option
option value="3"33/option
option value="4"44/option
option value="5"55/option
option value="6"66/option
/select
看select的如下属性:
$("#select_id").change(function(){ // 1.为Select添加事件,当选择其中一项时触发
//code...
});
var checkValue = $("#select_id").val(); // 2.获取Select选中项的Value
var checkText = $("#select_id :selected").text(); // 3.获取Select选中项的Text
var checkIndex = $("#select_id").attr("selectedIndex"); // 4.获取Select选中项的索引值,或者:$("#select_id").get(0).selectedIndex;
var maxIndex =$("#select_id :last").get(0).index; // 5.获取Select最大的索引值
/**
* jQuery设置Select的选中项
*/
$("#select_id").get(0).selectedIndex = 1; // 1.设置Select索引值为1的项选中
$("#select_id").val(4); // 2.设置Select的Value值为4的项选中
/**
* jQuery添加/删除Select的Option项
*/
$("#select_id").append("option value='新增'新增option/option"); // 1.为Select追加一个Option(下拉项)
$("#select_id").prepend("option value='请选择'请选择/option"); // 2.为Select插入一个Option(第一个位置)
$("#select_id").get(0).remove(1); // 3.删除Select中索引值为1的Option(第二个)
$("#select_id :last").remove(); // 4.删除Select中索引值最大Option(最后一个)
$("#select_id [value='3']").remove(); // 5.删除Select中Value='3'的Option
$("#select_id").empty();
$("#select_id").find("option:selected").text(); // 获取select 选中的 text :
$("#select_id").val(); // 获取select选中的 value:
$("#select_id").get(0).selectedIndex; // 获取select选中的索引:
//设置select 选中的value:
$("#select_id").attr("value","Normal");
$("#select_id").val("Normal");
$("#select_id").get(0).value = value;
//设置select 选中的text,通常可以在select回填中使用
var numId=33 //设置text==33的选中!
var count=$("#select_id option").length;
for(var i=0;icount;i++)
{ if($("#select_id").get(0).options[i].text == numId)
{
$("#select_id").get(0).options[i].selected = true;
break;
}
}
通过上面的总结,应该对jquery的checkbox,radio和select有了一定的了解了吧,温故而知新,用多了就会变的熟练起来,即使有时候忘记了,也可以来翻一翻!
有两种方法,
①:点击事件;如:
input type="checkbox" class="ck" /
$(".ck").click();
这样就能设置复选框选中;
②:设置其checked属性;如:
input type="checkbox" class="ck" /
$(".ck").prop("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(','));
首先 你要分清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
1、新建一个html文件,命名为test.html。
2、在test.html文件内,在p标签内,使用input标签创建一个checkbox选项和一个文本框,并且文本框设置默认值。
3、在test.html文件内,给每一个checkbox类型input元素设置name属性,统一设置为ck,主要用于下面通过该name获得input对象。
4、在test.html文件内,使用button标签创建一个按钮,按钮名称为“获得input值”。
5、在test.html文件中,给button按钮绑定onclick点击事件,当按钮被点击时,执行getinput()函数。
6、在js标签中,创建getinput()函数,在函数内,通过“:checked”选择器获得被选中的checkbox对象,使用next()方法获得checkbox相邻的input文本框对象,通过val()方法获得它的值。最后,使用alert()方法输出input的值。
7、在浏览器打开test.html文件,点击按钮,查看结果。