下面小編就為大家?guī)硪黄猨query checkbox無法用attr()二次勾選問題的解決方法。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。
比如,如下HTML頁面,一點(diǎn)【選中】、二點(diǎn)【取消選中】、三點(diǎn)【選中】,瞧,不行了唄。
1.html
<!doctype html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>prop demo</title>
<style>
img {
padding: 10px;
}
div {
color: red;
font-size: 24px;
}
</style>
<script src="https://code.jquery.com/jquery-1.10.2.js"></script>
</head>
<body>
<input type="checkbox" checked="checked">
<input type="checkbox">
<input type="checkbox">
<input type="checkbox" checked="checked">
<script>
$( "input[type='checkbox']" ).prop( "checked", function( i, val ) {
return !val;
});
</script>
</body>
</html>
解決方案,是使用prop()替換attr()方法(在Jquery1.6以上),如下代碼:
2.html
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Attr checked</title>
<script type="text/javascript" src="./js/jquery-1.11.2.js"></script>
<script type="text/javascript">
function switchChecked(flag) {
$("input[type='checkbox']").prop('checked', flag);
}
</script>
</head>
<body>
<input type="checkbox" />
<input type="button" onclick="switchChecked(true)" value="選中">
<input type="button" onclick="switchChecked(false)" value="取消選中">
</body>
</html>
以上這篇jquery checkbox無法用attr()二次勾選問題的解決方法就是小編分享給大家的全部內(nèi)容了