我发现在这样的 HTML 页面中给出了一个表单:
<form name="form">
<input type="image" name="foo"
src="somewhere.gif" alt="image" value="blah"/>
<input type="text" name="bar" value="blah"/>
</form>
在 Javascript 中通过 DOM 访问元素时,没有用于图像输入的元素!它只是被省略了。所以,document.forms[0].elements.length
是 1,document.forms[0].element[0].type
是“文本”。
在 Firefox 和 IE 中似乎就是这种情况。我在我的参考书或网络上的任何地方都找不到这个事实。我只能在这里找到一个一次性评论:
https://bugzilla.mozilla.org/show_bug.cgi?id=163822#c4
这表明它“就是这样”。如果是这样,那就这样吧 - 但它真的没有任何地方记录吗?这是一个历史错误,还是有原因的?