【发布时间】:2020-09-12 21:12:26
【问题描述】:
我想将我的表(特定行)中的一些输入字段添加到数组中。稍后我想循环遍历这个数组。
我是这样做的:
let selectedTr = [];
let arr = [];
$('td input:checked').each(function() {
selectedTr.push($(this).closest('tr'));
});
selectedTr.forEach((tr) => {
td = tr.find('td:not(:first-child) input');
td.each(function() {
arr.push($(this));
});
});
// Doesn't work if I define arr like above (error: arr.each is not a function, if I use `arr = $('form input')` it works perfectly for example)
arr.each(function() {
...
});
这是一个关于 jsfiddle 的简短演示:https://jsfiddle.net/a4fpqynx/
PS:在jsfiddle中我得到:如果我使用console.log(),则无法克隆错误对象。
arr 显示类似 (S on every line):
0 S [<input type="text">] (1)
1 S [<input type="text">] (1)
...
但我需要(只需要一个 S)
S
0 [<input type="text">]
1 [<input type="text">]
...
所以我可以使用arr.each。
PS:arr.each(function() {}) 位于另一个函数中,该函数从多个文件中调用以检查输入字段。我将其用于登录、表格和其他表单。
我怎样才能做到这一点?
【问题讨论】:
标签: javascript jquery arrays loops foreach