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屬性,通過類選擇器選?。?/p>
<input type="checkbox" name="myBox" class="chkTwo" value="1" checked="checked" />
JQuery:
$(".chkTwo").click(function(){}); 3.通過標簽選擇器和屬性選擇器來選?。?br />
<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(','));
新聞熱點
疑難解答