【问题标题】:Push input fields to array and loop through将输入字段推送到数组并循环遍历
【发布时间】:2020-09-11 18:32:18
【问题描述】:

我想将我的表(特定行)中的一些输入字段添加到数组中。稍后我想循环遍历这个数组。

我是这样做的:

selectedObjects.forEach((tr) => {
    cell = tr.find('input');

    cell.each(function() {
       arr.push($(this));
    });
});

arr 显示类似:

0 S [<input type="text">] (1)
1 S [<input type="text">] (1)

我尝试像这样循环遍历 arr。 PS:我也应该能够循环通过 arr = $('form input') (具有相同的功能)。

arr.each(function() {
    console.log(this.name)
});

错误:arr.each 不是函数

【问题讨论】:

  • 这应该可以正常工作。您能否在此处使用jsfiddlesnippet 为此创建一个small demo 以显示正在发生的问题。

标签: javascript jquery arrays loops foreach


【解决方案1】:

您应该将arr 设为 jQuery 对象:

$(arr)

这样做,您就可以访问each

所以你必须试试这个:

$(arr).each(function() {
    console.log(this.name)
});

您必须这样做的原因是each 是在 jQuery 对象上定义的函数。

【讨论】:

  • 工作得很好,但如果我使用cell.find('input')name=name[] 的输入推送到arr 并记录cell.name,它会显示未定义。你能帮帮我吗?
  • 您能否在主帖中使用jsfiddlesnippet 为此创建一个small demo 以显示正在发生的问题。然后其他人可以对其进行调试并提供更多帮助。
  • @Lupin 我同意^^^,如果没有相应的HTML,很难找到解决这个问题的方法。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2021-10-04
  • 2018-07-11
  • 1970-01-01
  • 1970-01-01
  • 2016-11-05
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多