javascript – 获取具有名称=“id”的子输入的表单的ID

前端之家收集整理的这篇文章主要介绍了javascript – 获取具有名称=“id”的子输入的表单的ID前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
所以我遇到了一个奇怪的问题?
我想抓住一个表单的id:
<form id="test">
    <input name="id" type="hidden" value/>
</form>

但是运行document.getElementById(“test”).id不按预期方式返回测试,而是返回name =“id”的输入.任何人都知道这里发生了什么?

这是一个复制问题的小提琴 – > http://jsfiddle.net/jascbbfu/

解决方法

表单控件名称用于创建引用该控件的表单的命名属性.所以你有
<form id="test">
  <input name="id">
</form>

那么表单的id属性将被分配给一个名为id的输入元素的引用.不应该为表单控件提供与标准表单属性相同的名称,例如.在下面的:

<form>
  <input name="submit">
</form>

因为form.submit引用输入而不是方法,所以不可能调用表单的提交方法.

如其他答案所述,您可以将名称更改为不与标准表单属性冲突的内容,也可以使用getAttribute.第一个解决方案是首选,因为它也可能导致更适合的表单控件名称,并避免使用getAttribute.

猜你在找的JavaScript相关文章