我想获取表单中的所有元素。我可以使用 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">
我知道像这样的简单测试:
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]);
}
关于javascript - 如何从表单中检索所有元素?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28641629/