gpt4 book ai didi

javascript - 在 javascript 中,这是一个有效的结构吗? : document. 名称.名称.值?

转载 作者:搜寻专家 更新时间:2023-10-31 22:56:34 27 4
gpt4 key购买 nike

这是表格:

<form name=fname ...
<input name=iname value="" ...

此 javascript 函数获取输入的值:

var val = document.fname.iname.value;

这是合法的吗?我认为您必须使用 getElementsByName 来执行此操作。它有效,只是我从未见过有人那样做。这是恰好有效的事情之一吗……目前?

最佳答案

更新

根据 WHATWG 6.2.4 Named access on the Window object

The Window object supports named properties. The supported property names of a Window object window at any moment consist of the following,...for all applet, embed, form, frameset, img, and object elements...


根据 W3C DOM 2 HTML 规范 2.7.2.1 HTMLAllCollection

The following elements name attribute can be referenced as a property of the document object:anchor, applet, button, form, frame, iframe, img, input, map, meta, object, param, select, and textarea


这种引用方法是标准的,但通常不鼓励使用它。避免通过 name 属性直接引用 DOM 属性或 window 对象的几个原因是:变量阴影、无意中将范围限定到 window 对象、主要浏览器不一致等。有关应避免的原因的详细信息,请阅读this sectionthis post .

此代码段展示了一种使用表单名称作为引用的稳定且标准的方式 document.forms以及前面提到的引用表单名称。

片段

var val1 = document.forms.fname.elements.iname.value;

console.log(val1);

var val2 = fname.iname.value;

console.log(val2);
<form name='fname'>
<input name='iname' value="42">
</form>

关于javascript - 在 javascript 中,这是一个有效的结构吗? : document. 名称.名称.值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41092147/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com