我正在尝试遍历表并检查是否选中了复选框。如果它是我想将它存储在Array
但是我似乎无法弄清楚如何循环。这是我jsfiddle
这是我的代码:
html:
<a href="#" id="deleteBtn">Delete</a>
<table id="tweets_table">
<thead>
<th>Checkbox</th>
<th>Random</th>
</thead>
<tr>
<td><input type="checkbox" name="delete_tweet[]" value="0"/></td>
<td>Row 1</td>
</tr>
<tr>
<td><input type="checkbox" name="delete_tweet[]" value="0"/></td>
<td>Row 2</td>
</tr>
<tr>
<td><input type="checkbox" name="delete_tweet[]" value="0"/></td>
<td>Row 3</td>
</tr>
</table>
js
:
//按下按钮时,请调用此功能......
$('#deleteBtn').click(function(){
//Loop through the table and see which checkboxes are checked.
//If checked add to an array
console.log('Clicked'); //Start loop
$('#tweets_table tr').each(function(i, row){
//Reference all the stuff I need
var $row = $(row),
$check = $row.find('input:checked');
$check.each(function(i, checkbox){
var $checkbox = $(checkbox)
});
});
});
我想知道如何获取复选框。
答案 0 :(得分:0)
您可以使用jQuery对所选复选框进行选择。像这样:
var $checked = $('input[type="checkbox"]:checked');
以下是您的回答:http://jsfiddle.net/u3po26zj/3/
答案 1 :(得分:0)
Jquery doc网站上有一个关于这个http://api.jquery.com/checked-selector/
的例子<script>
var countChecked = function() {
var n = $( "input:checked" ).length;
$( "div" ).text( n + (n === 1 ? " is" : " are") + " checked!" );
};
countChecked();
$( "input[type=checkbox]" ).on( "click", countChecked );
</script>
答案 2 :(得分:0)
尝试.map()
$('#deleteBtn').click(function() {
var array = $("#tweets_table").find("input:checkbox:checked").map(function() {
return this.value;
}).get();
console.log(array);
});
答案 3 :(得分:0)
从你的小提琴到我的fiddle:
$('#tweets_table input[type=checkbox]:checked').parents('tr').remove();
答案 4 :(得分:0)
使用Jquery循环遍历所有输入类型复选框:
不要忘记在doc ready event ...
中添加点击处理程序$(document).ready(function(){
$('#buttonId').click(function(){
var myArray = {};
$('#table').find('input[type=checkbox]').each(function(idx, ele){
var checkbox = $(this);
//Do what you'd like here
if(checkbox.is(':checked')){
myArray[idx] = checkbox;
}
});
});
});
答案 5 :(得分:0)
使用此功能,您可以使用包含已选中数组中的已选中复选框
//When the button is pressed call this function...
$('#deleteBtn').click(function(){
//Loop through the table and see which checkboxes are checked.
//If checked add to an array
selected = $("#tweets_table tr td input[type='checkbox']:checked");
arraySelected = [];
for (var i = 0; i < selected.length; i++){
arraySelected[i] = $(selected[i]).parent("td").parent("tr")[0];
}
console.log(arraySelected);
});