使用id名称和name直接获取元素

Posted vivayue

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了使用id名称和name直接获取元素相关的知识,希望对你有一定的参考价值。

我们知道一些第三方的js库对如何快速选取html中的元素做了一些简化,貌似十分高深莫测,其实也不然。而且js本身自带了对于特殊元素的简便选取的方法,下面就为大家简单介绍下。

在html中,一般最直接的辨别html元素使用的是name和id属性,两者有着细微的不同:id必须页面唯一,但name可以有重复。

在js中如果id名称不和内置属性或全局变量重名的话,该名称自动成为window对象的属性

<div id="demo"></div>

test.onclick = function(){

  //your code
}

等价于

window.test.onclick = function(){
  //your code
}

对于name属性来说,只有某些类型的html元素具有类似的方法,比如:form,img,iframe,applet,embed,object等。在这些元素中可以通过全局变量或者document的属性来访问特定name属性的元素;如果相同name属性的有多个元素,则返回一个NodeList的类似只读数组的对象,例如如下代码:

<div>
  <img name="pic" src="#" alt="pic_0" />
  <img name="pic" src="#" alt="pic_1" />
  <img name="pic" src="#" alt="pic_2" />
</div>
//我们可以这样引用name为pic的元素:
for(x in pic)
 console.log(pic[x].alt);
使用id名称和name名称获取元素,几乎在所有浏览器都支持。

以上是关于使用id名称和name直接获取元素的主要内容,如果未能解决你的问题,请参考以下文章

JavaScript通过元素id和name直接获取元素的方法

从自定义适配器获取片段中的 UI 元素 ID

通过Id获取多个元素

从 dbid 获取片段 ID

怎么获取iframe里面的元素

Linq + Reflection通过字段名称和条件从列表中获取元素