在取覆選框checkbox的屬性checked屬性值時,發現一個問題,就是當用attr取值時,真的為"checked",假的為"undefined";當用prop取值時,真的為"true",假的為"false"。經過網上參考一些資料,及根據官方的建議這兩個用法:具有 true 和 false 兩個屬 ...
在取覆選框checkbox的屬性checked屬性值時,發現一個問題,就是當用attr取值時,真的為"checked",假的為"undefined";當用prop取值時,真的為"true",假的為"false"。經過網上參考一些資料,及根據官方的建議這兩個用法:具有 true 和 false 兩個屬性的屬性,如 checked, selected 或者 disabled 使用prop(),其他的使用 attr()。
方法一:
<!DOCTYPE html>
<html lang="zh-CN">
<head>
<meta charset="UTF-8">
<title>全選、不選、反選 1</title>
<script src="jquery.min.js"></script>
<script>
$(function(){
$('.check .btn1').click(function(){//全選
$('.music :checkbox').prop('checked',true);
});
$('.check .btn2').click(function(){//全不選
$('.music :checkbox').prop('checked',false);
});
$('.check .btn3').click(function(){//反選
$('.music :checkbox').each(function(){
$(this).prop('checked',!$(this).prop('checked'));
});
});
});
</script>
</head>
<body>
<div class="music">
<input type="checkbox" name="music1" value="小白兔">小白兔<br>
<input type="checkbox" name="music2" value="小燕子">小燕子<br>
<input type="checkbox" name="music3" value="哈巴狗">哈巴狗<br>
<input type="checkbox" name="music4" value="小青蛙">小青蛙<br>
<input type="checkbox" name="music5" value="數鴨子">數鴨子<br><br>
</div>
<div class="check">
<button class="btn1">全選</button>
<button class="btn2">全不選</button>
<button class="btn3">反選</button>
</div>
</body>
</html>
方法二:
<!DOCTYPE html>
<html lang="zh-CN">
<head>
<meta charset="UTF-8">
<title>全部由jquery動態生成</title>
<script src="jquery.min.js"></script>
<script>
function checkAll(){//全選
$(":checkbox").prop("checked",true);
}
function checkNo(){//全不選
$(":checkbox").prop("checked",false);
}
function checkRev(){//反選
$(":checkbox").each(function(){
$(this).prop("checked",!$(this).prop("checked"));
});
}
$(function(){
var sec=$("<div></div>").appendTo($("body"));//創建一個div追加到body裡面
var input="";//創建一個空的變數
for(var i=0;i<5;i++){
var index=i+1;
input+="<input type='checkbox' name='標題'"+index+"value='標題'"+index+">"+"標題"+index+"<br>";
}//把從0到4每一個創建的input收集到空變數裡面
sec.append(input);//再把這些收集到的所有input追加到div裡面
sec.append($("<button onclick='checkAll()'>全選</button>"));//創建全選按鈕,並追加到div裡面
sec.append($("<button onclick='checkNo()'>全不選</button>"));//創建全不選按鈕,並追加到div裡面
sec.append($("<button onclick='checkRev()'>反選</button>"));//創建反選按鈕,並追加到div裡面
});
</script>
</head>
<body>
</body>
</html>