//全選/取消,反選,參數(shù)是多選框id和包含選框的塊級元素id
蚌山ssl適用于網(wǎng)站、小程序/APP、API接口等需要進(jìn)行數(shù)據(jù)傳輸應(yīng)用場景,ssl證書未來市場廣闊!成為創(chuàng)新互聯(lián)的ssl證書銷售渠道,可以享受市場價格4-6折優(yōu)惠!如果有意向歡迎電話聯(lián)系或者加微信: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
);
};
});
};
//全選/取消,反選,參數(shù)是多選框id和同一范圍內(nèi)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操作復(fù)選框(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、設(shè)置第一個checkbox 為選中值
$('input:checkbox:first').attr("checked",'checked');
或者
$('input:checkbox').eq(0).attr("checked",'true');
4、設(shè)置最后一個checkbox為選中值
$('input:radio:last').attr('checked', 'checked');
或者
$('input:radio:last').attr('checked', 'true');
5、根據(jù)索引值設(shè)置任意一個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、根據(jù)Value值設(shè)置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的一些相關(guān)操作
一、通過選擇器選取CheckBox:
1.給CheckBox設(shè)置一個id屬性,通過id選擇器選取:
input type="checkbox" name="myBox" id="chkOne" value="1" checked="checked" /
JQuery:
$("#chkOne").click(function(){});
2.給CheckBox設(shè)置一個class屬性,通過類選擇器選取:
input type="checkbox" name="myBox" class="chkTwo" value="1" checked="checked" /
JQuery:
$(".chkTwo").click(function(){});
3.通過標(biāo)簽選擇器和屬性選擇器來選?。?/p>
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.設(shè)置checkbox被選中用attr();方法:
$("input[name='box']").attr("checked","checked");
在HTML中,如果一個復(fù)選框被選中,對應(yīng)的標(biāo)記為 checked="checked"。 但如果用jquery alert($("#id").attr("checked")) 則會提示您是"true"而不是"checked",所以判斷 if("checked"==$("#id").attr("checked")) 是錯誤的,應(yīng)該是 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']")有何區(qū)別沒試過,我試了用 $("input[name='box']")能成功。
4.獲取未選中的checkbox的值:
$("input[name='box']").each(function(){
if ($(this).attr('checked') ==false) {
alert($(this).val());
}
});
5.設(shè)置checkbox的value屬性的值:
$(this).attr("value",值);
三、 一般都是創(chuàng)建一個js數(shù)組來存儲遍歷checkbox得到的值,創(chuàng)建js數(shù)組的方法:
1. var array= new Array();
2. 往數(shù)組添加數(shù)據(jù):
array.push($(this).val());
3.數(shù)組以“,”分隔輸出:
alert(array.join(','));
有兩種方法,
①:點擊事件;如:
input?type="checkbox"?class="ck"?/
$(".ck").click();
這樣就能設(shè)置復(fù)選框選中;
②:設(shè)置其checked屬性;如:
input?type="checkbox"?class="ck"?/
$(".ck").prop("checked",true);
這樣就設(shè)置復(fù)選框選中
首先 ?你要分清Jquery中 ?prop和attr 的區(qū)別
借鑒網(wǎng)站?
我舉一個例子 ?就是全選/反選的情況 ? 如果你是用jquery中的attr來進(jìn)行選中的話 ? 第一次可以選中 ? 但當(dāng)你第二次點擊全選的時候 ?就沒有反應(yīng)了 ? ?子復(fù)選框 ?不會有任何反應(yīng)
但是如果你用的是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"));???????//第一次選中成功??第二次??子復(fù)選框沒有反應(yīng)
});
//全部選中
//$("input[name='chkFruit']").prop("checked",?"checked");
//eq(index)???Index索引從0開始??選中第一個
//$("input[name='chkFruit']").eq(0).prop("checked",?"checked");
});
/script