2

我正在研究一个不久前编码的网站。我找到了一个 Javascript 函数,它使用以下语法为文本框设置值

document.myForm.myText.value = "value";

我已经测试了这段代码,它可以在 IE、Firefox 和 Chrome 中运行。

我的问题是这种设置/选择 DOM 元素的方式是否可以继续进行(即它会贬值)?我应该将这种类型的元素选择实例更改为下面更标准的(根据我的经验)代码吗?

document.getElementById("myText").value = "value";

提前致谢。

4

1 回答 1

1

我认为这不会有什么不同,因为浏览器的 dom 表示会改变以破坏代码;这可能会破坏互联网上一半的网页。

您的代码比第一个更好,因为您随后将编码到方法的合同,该合同getElementById返回HTMLElement您需要的内容。这意味着 JS 引擎必须遵守 ECMAScript 的标准并返回准确的元素。因此,如果明天浏览器更改其结构并且您的元素现在是 document.forms.myForm.myText.value 而不是您的预期,您的代码无需担心。

于 2012-10-25T11:00:40.943 回答