没有document.getElementByName方法

首先声明的是:

  document.getElementByName方法没有。document.getElementsByName得到的是标签的数组

  document.getElementId得到的是某一个标签

  <form name="form_write">

  <input name="content" type="text">

  然而可以用很浅显的方式得到如:

  var fn = document.getElementsByName("form_write")[0]; //得到这个form下的对象

  fn.content.value;//就直接去用这个对象取值就可以了。

  document.getElementById 1、getElementById

  作用:一般页面里ID是唯一的,用于准备定位一个元素

  语法: document.getElementById(id)

  参数:id :必选项为字符串(String)

  返回值:对象; 返回相同id对象中的第一个,按在页面中出现的次序,如果无符合条件的对象,则返回 null

  example:

  

复制代码 代码如下:

  document.getElementById("id1").value;

  2、getElementsByName

  作用:按元素的名称查找,返回一个同名元素的数组

  语法: document.getElementsByName(name)

  参数:name :必选项为字符串(String)

  返回值:数组对象; 如果无符合条件的对象,则返回空数组,按在页面中出现的次序

  注意:返回数组值为value属性的值,

  如果某标签无value属性,当你添加上value属性并赋值后,getElementsByName也能取到其值,

  当未对value属性赋值时, getElementsByName返回数组值将是undefined ,

  但仍能获得相同name标签的个数document.getElementsByName(name).length

  当未设置name属性时document.getElementsByName仍能使用,它将根据你id取得value属性的值

  example:

  

复制代码 代码如下:

  document.getElementsByName("name1")[0].value;

  document.getElementsByName("name1")[1].value;

  <span id='CBylawIndexName' class='normalNode' value='all' >全部</span>"

  <span id='CBylawIndexName' class='normalNode' value='ALL' >全部</span>"

  span标签其实没有name和value属性

  但document.getElementsByName("CBylawIndexName")仍将取得value的值

  3、getElementsByTagName

  作用:按HTML标签名查询,返回一个相同标签元素的数组

  语法: object.getElementsByTagName(tagname) object可以是document或event.srcElement.parentElement等

  参数:tagname:必选项为字符串(String),根据HTML标签检索。

  返回值:数组对象; 如果无符合条件的对象,则返回空数组,按在页面中出现的次序

  example:

  

复制代码 代码如下:

  document.getElementsByTagName("p")[0].childNodes[0].nodeValue;

  document.getElementsByTagName("p")[1].childNodes[0].nodeValue;