javascript - 如何从表单中检索所有元素?

标签 javascript html dom

我想获取表单中的所有元素。我可以使用 document.getElementById('form').elements 来做到这一点,但它会返回我不想要的额外属性(见下文)。如何“删除”它?

代码:

var result = document.getElementById('form').elements;
for(var key in result)
{
  console.log(key, ' = ', result[key]);
}

这是输出:

0 = <input id="A" type="text" name="A" value="a">
1 = <input id="B" type="text" name="B" value="b">
2 = <input type="checkbox" name="C">
namedItem = namedItem()
item = item()
@@iterator = @@iterator()
length = 3

我只想要 HTML 元素,即值 0、1 和 2。如下所示:

0 = <input id="A" type="text" name="A" value="a">
1 = <input id="B" type="text" name="B" value="b">
2 = <input type="checkbox" name="C">

Live example.

我知道像这样的简单测试:

if(!isNumber(key))
        continue;

可以很好地完成工作,但我正在寻找一个“优雅”的解决方案,如果没有任何解决方案,我将使用此测试。

最佳答案

最快的方法:

var result = document.getElementById('form').elements;
console.log(result);

for(var key in result)
{
    if(result.hasOwnProperty(key))
        console.log(key, ' = ', result[key]);

}

http://jsfiddle.net/8Lt6xrb8/2/

关于javascript - 如何从表单中检索所有元素?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28641629/

相关文章:

javascript - 使用 PHP 进行 MySQL 查询并将数据发送到 JavaScript

asp.net - 我怎样才能有一个 ascx 回发并每隔 X 秒自动刷新一次?

html - 如何组合3个小主题css文件然后点击选择一个

javascript - 具有匿名函数的事件监听器

javascript - 如何获取 html 输入的值并执行 google 搜索?

javascript - Select2 空图标范围

javascript - ( Canvas )每隔几秒推送一个新项目

javascript - jquery 选择器

javascript - 如何在javascript中检查一系列复选框中的任何一个是否被选中

javascript - 与 jQuery 初始化之前的条件 DOM 检查有关的性能?