在回答一个关于Node.childNodes
的.item()
属性问题时,我提供了错误的答案。后来我检查了form
元素返回的childNodes
的__proto__
,发现了一个forEach
方法。请参考Node.childNodes
。
Node.childNodes
的forEach
方法在NodeList
规范、MDN的Methods
或接口NodeList中均未被记录,并且似乎没有在使用forEach方法迭代NodeList或链接到该问题的页面中提到;尽管它在Chromium 50中可用。
这个方法只能在相对较新的Chrome / Chromium版本中使用吗?如果是,这是否有文档记录?
关于Node.childNodes
的forEach()
方法是否有任何文档记录?
document.querySelector("form").addEventListener("submit", function(e) {
e.preventDefault();
var form = e.target;
form.childNodes.forEach(function(el) {
if (el.tagName === "INPUT" && el.type !== "submit")
snippet.log("name:" + el.name + ", value:" + el.value)
});
});
<form>
<input type="text" name="firstName" value="The first name">
<input type="text" name="lastName" value="The last name">
<input type="email" name="emailAddress" value="email@example.com">
<br>
<input type="submit" value="Submit">
</form>
<!-- Script provides the `snippet` object, see http://meta.stackexchange.com/a/242144/134069 -->
<script src="//tjcrowder.github.io/simple-snippets-console/snippet.js"></script>