一、通過選擇器選取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"))
$("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"
name
=
"myBox"
class
=
"chkTwo"
value
=
"2"
/>
<input
type
=
"checkbox"
name
=
"myBox"
id
=
"chkOne"
value
=
"2"
/>