获取checkbox的值
如何使用js或者jquery,来获取checkbox中的值,组成一个数组。我想做全选,再删除的功能。
[解决办法]
var array = new Array();//存放所有被选中的checkBox的id值
$('input[name="XXX"]').each(function(){
if($(this).attr("checked") == 'checked'){
array.push($(this).attr('id'))
}
});
[解决办法]
<html>
<head>
<title></title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.js" type="text/javascript"></script>
<script type="text/javascript">
//------------- 1. jQuery ----------------------
//删除
function delAll(){
var $chkTrs = $("#tbodyList :checked").parents("tr");
if($chkTrs.length==0){
alert("请选择记录!");
return;
}
$chkTrs.remove();
}
//选择
function chkAll(obj){
//注: jQuery 1.6 之后应该用 prop 而不是用 attr 来控制属性checked
$("#tbodyList :checkbox").prop("checked",obj.checked);
}
//------------- 2. js ----------------------
//删除
function delAll_js(){
var chks = document.getElementById("tbodyList").getElementsByTagName("input");
var trArr = [];
for(var i=0, len = chks.length; i<len;i++){
var chk = chks[i];
if(chks[i].checked){
trArr.push(chks[i].parentNode.parentNode);
}
}
if(trArr.length==0){
alert("请选择记录!");
return;
}
for(var i=0,len=trArr.length;i<len;i++){
trArr[i].parentNode.removeChild(trArr[i]);
}
}
//选择
function chkAll_js(obj){
var chks = document.getElementById("tbodyList").getElementsByTagName("input");
for(var i=0, len = chks.length; i<len;i++){
chks[i].checked = obj.checked;
}
}
</script>
</head>
<body>
<input type="button" onclick="delAll_js()" value="删除" />
<table >
<thead>
<tr><th><input type="checkbox" onclick="chkAll_js(this)" /></th><th>Name</th></tr>
</thead>
<tbody id="tbodyList" >
<tr><td><input type="checkbox" /></td><td>Tom</td></tr>
<tr><td><input type="checkbox" /></td><td>Jack</td></tr>
<tr><td><input type="checkbox" /></td><td>Andy</td></tr>
<tr><td><input type="checkbox" /></td><td>Merry</td></tr>
</tbody>
</table>
</body>
</html>
