$(
function
() {
// 全选
$(
"#btnCheckAll"
).bind(
"click"
,
function
() {
$(
"[name = chkItem]:checkbox"
).attr(
"checked"
,
true
);
});
// 全不选
$(
"#btnCheckNone"
).bind(
"click"
,
function
() {
$(
"[name = chkItem]:checkbox"
).attr(
"checked"
,
false
);
});
// 反选
$(
"#btnCheckReverse"
).bind(
"click"
,
function
() {
$(
"[name = chkItem]:checkbox"
).each(
function
() {
$(
this
).attr(
"checked"
, !$(
this
).attr(
"checked"
));
});
});
// 全不选
$(
"#btnSubmit"
).bind(
"click"
,
function
() {
var
result =
new
Array();
$(
"[name = chkItem]:checkbox"
).each(
function
() {
if
($(
this
).is(
":checked"
)) {
result.push($(
this
).attr(
"value"
));
}
});
alert(result.join(
","
));
});
});
问题描述:第一次点全选可以,然后点击全不选,接着再点击全选、全不选、反选就没了反应,后来用其他浏览器发下可以,所以感觉是兼容性的问题,后来查阅资料发现果然是的,参考地址http://jquery.com/
解决方法:将attr换为prop即可,经过验证各个浏览器都是好的,官网说明是在1.6之后建议用prop,在此记录以备后用。