javascript - JS DOM - document.getElementById 与按名称选择之间的区别

标签 javascript dom

我有这样的代码:

<form name="selectForm">
    <select multiple name="cars">
        <option value="volvo">Volvo</option>
        <option value="saab">Saab</option>
        <option value="mercedes">Mercedes</option>
        <option value="audi">Audi</option>
    </select><br />
    <input type="button" value="Select Cars" onclick="alert('You selected ' + howMany(document.selectForm.cars) + ' cars')" />
</form>

我的主要问题是关于这一行:document.selectForm.cars

它有什么作用?我在哪里可以找到相关信息来阅读它?为什么不使用通常的getElementBy...Mozilla只给出与此无关的接口(interface)。

最佳答案

您不太可能在最近的教程中看到这种模式,因为它有点过时:

document.selectForm 

指的是form带有 name 的元素(或者可能 id ) selectForm 的属性。 document.selectForm.cars<select>其中名为 cars 的元素。这种旧的使用方式document.*name*引用页面上的元素应替换为 document.getElementsByName或(在为表格提供 ID 后)document.getElementById在现代代码中。

您可以通过转到控制台并输入 document.selectForm 来解决这个问题,您会看到显示的元素

关于javascript - JS DOM - document.getElementById 与按名称选择之间的区别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28934916/

相关文章:

javascript - 如何使用fs读取ts文件并动态更新代码?

javascript - 从控制台触发 ember 操作

javascript - 'document' 上的“querySelectorAll”转义 html 属性值

php - 如何将多个复选框值传递给 php

javascript - 在 XUL 中,我如何知道浏览器标签已完成加载?

javascript - jquery展开/折叠?

javascript - browser.find 对于 Firefox 附加组件不断返回未定义

javascript - CSS 中的 `var` 在 IE 中不起作用

php - 如何更改 .xml 文件中 cdata 的值,然后再次使用 php 保存它

dom - 在 Node.js 中生成 javascript 以供客户端使用的方法