Javascript/JQuery遍历表行和单元格,并向控制台输出一组选中的复选框
Javascript/JQuery iterate through table rows and cells and output an attr of checked checkboxes to console
我有以下代码,它应该遍历每个表行并转储我的数组,该数组是在javascript的前面一段声明的。然后,如果复选框被选中,并且它有一个attr"changed=yes",那么它应该被推到数组中,值应该输出到控制台,以及"path"属性,它应该作为一个变量输出,每次函数发现一个新的复选框被选中和更改时,该变量可以被覆盖。那么我的代码有什么问题呢?这些函数包含在一个函数中,当用户单击表单上的submit时调用该函数。
JsFiddle: http://jsfiddle.net/hU89p/392/
$('#myTable1 tr').each(function(){
myArray = [];
$.each($("input[type='checkbox']:checked").closest("td").siblings("td"),
function () {
if($(this).data("changed") == 'yes'){
myArray.push($(this).attr('checkboxtype'));
filepath = $(this).attr('path');
console.log(myArray);
console.log(filepath);
}
});
});
这是工作小提琴:
保持简洁:
$('#myTable1 tr').each(function() {
var columns = $(this).find('td');
columns.each(function() {
var box = $(this).find('input:checkbox');
if(box.is(":checked") && box.attr("changed") == 'yes')
{
myArray.push(box.attr('checkboxtype'));
filepath = box.attr('path');
}
});
});
console.log(myArray);
});
您应该使用$("input[type='checkbox']:checked").closest("td").siblings("td").each()
。
看$().each()
和$.each()
的区别
try this :-
$('#myTable1 tr').each(function () {
myArray = [];
$(this).find("td input:checkbox").each(function () {
if ($(this).is(":checked") && $(this).attr("changed") == 'yes') {
myArray.push($(this).attr('checkboxtype'));
filepath = $(this).attr('path');
console.log(myArray);
console.log(filepath);
}
});
});
相关文章:
- fluxxor向一个flux实例添加一组以上的操作
- 我们怎样才能将内含子J用于一组特定的元素
- 使用linq.js按当前日期订购一组momentjs日期
- 正则表达式,从一组关键字中获取奇数
- 创建一组元素JointJS
- 如何在javascript中获取一组复选框值
- 一组(共组..)
- 使用JS将页面中的每个字母设置为随机颜色.为什么在页面的每个打开标记之前总是有一组额外的span标记
- 在一组复选框中,一次只允许选择一个
- 为什么在fabricjs中可选择的不适用于一组圆
- 如何在不刷新页面的情况下每次单击一组选项卡时刷新视图内容窗格
- 从一组具有相同起始和结束的所有段落的段落中提取包含特定字符串的段落
- 简单的Javascript文本编辑器或一组函数
- 基于日期范围的一组日期范围内的天数
- 处理对象数组并将它们以 4 个为一组进行分配
- 如何在 Javascript 中用一组字符拆分子字符串上的字符串
- Javascript和PHP为每个循环输出一个数组
- 检索数组和输出结果以生成一组html图像
- 如何使用JavaScript while循环输出一组给定的字符串
- Javascript/JQuery遍历表行和单元格,并向控制台输出一组选中的复选框