我需要从通用输入字段检索日期。我不知道用户可以在表单中创建多少个日期(输入字段),因此我通过 rowCount 来计数。
我无法提取字段的值(可能是语法错误)。
注意,当我运行代码时,我得到:无法设置未定义的属性“0”
html代码:
<div>
<table id='dynamic_field_edit'>
<tbody>
<tr>
<td>Date</td>
<td><input type="text" placeholder="Enter date" /></td>
</tr>
<tr>
<td>Date:</td>
<td><input type="text" placeholder="Enter date" /></td>
</tr>
</tbody>
</table>
</div>
JS代码:
var arrayDate = [];
var rowCount = document.getElementById('dynamic_field_edit').rows.length;
console.log(rowCount);
var allInputs = document.querySelectorAll('input');
for (let i = 0; i < allInputs.length; i++) {
arrayDate.push(allInputs[i].value);
}
console.log(arrayDate);
编辑:
完成所有建议的更改后,它可以工作,但它会从文档中的输入中检索所有值。
最佳答案
你只需要初始化你的数组:
var arrayDate = [];
编辑:
似乎在此示例中有效,您可以与您的代码进行比较吗?
https://jsfiddle.net/emeLdecm/1/
(我添加了一个按钮来启动 JS,只是为了演示)
关于javascript - 从没有 id 的表中检索 td 中的输入值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45044078/