从几个文本框中收集值

时间:2018-04-30 01:47:34

标签: javascript html

我正在创建一个网站,为用户提供选择答案的选项,然后在文本框中输入反馈。我遇到的问题是在我的HTML中我有类似的东西:

protocol FooDelegate {
    // code
}

extension FooDelegate where Self: UITableViewController {
    // code
}

以下功能仅用于获取第一个文本框,而不是第二个文本框,这是必需的。我不是HTML / CSS / Javascript中最通用的,它实际上是我第一次这样做,所以我无法获得任何其他工作来获取输入的内容除<input type="text" id="comment-block"/></div> 标记中的id以外的用户。我已尝试插入input或其他人,但我无法让它工作。

name

我可以使用不同的ID,但我希望保持ID相同,以便以后可以轻松更改样式。

除了拥有不同的ID之外,我怎样才能实现它?有办法吗?

1 个答案:

答案 0 :(得分:1)

您可以使用与querySelectorAll相同的内容迭代所有元素。这通常通过使用公共类名来实现:

const inputs = [...document.querySelectorAll('.answer')];
document.querySelector('div').addEventListener('click', () => {
  const answers = inputs.map(input => input.value);
  console.log('answers: ' + answers);
});
<input type="text" class="answer">
<input type="text" class="answer">
<input type="text" class="answer">
<input type="text" class="answer">
<input type="text" class="answer">
<div>Click</div>