id和name是html 中常用到的标签属性值;
看似雷同的它们却有着不同的作用,当然它们也有想通之处。
id:顾名思义,和身份证号码一样,是唯一的,一个人拥有一个,哪怕人再多,也是一人一个,不会因为地球七十亿人了,就会发生两个不同的人却有着相同身份证的情况。当然你说自己制造一个和别人一样的身份证,那我只能奉劝一句造假的事情咱还是别干为好。
name:和id一样都可以指代某个人了,但是,可以有不同的人叫相同名字的情况,这很常见。从小学到大学,姓名撞车的情况数不甚数,咱就不数了。
在html中,我们可以经常见到如下三种方法:
<1>var values=document.getElementsByName("name").value;
既然name可以指代许多人,那么我们通过上述到的values值,也就不只是唯一的,当然,你可以起一个别人一辈子也不可能起得,或者别人不可能那么有才想出来的名字,那么你就变成了唯一。
所以这儿得到的values是一个集合,换句话说也就是一个数组,未知长度的数组。你要获取该name所对应的value值得话,那就得遍历。当是你需要的值得时候,那么你就得到了自己的目标值。
<2>varkey=document.getElementByIdx_x("id");
id有两种方法:
(1)var value1=key.value;
(2)var value1=key.innerHTML;
(1)这个方法和getElementsByName("name").value是一样的,区别就是,这儿的value1值是唯一确定的,也就是只是一个值,而不是一个个值的集合或者说是数组。说道这儿,我感觉比较重要的一点要说说,看到(2)这个方法,也许就比较纳闷了,什么时候用(1)什么时候用(2)。其实,记住一点就好区分了,用(1)的时候,说明这个标签里面可以写value值,比如说 <input type="button "> <inputtype="text"><input type="checkbox">等等,而用(2)的时候,那么标签里面不能写value值。比如说:<p></p> <b></b>等等,标签。这时,这些不能写value的标签用(2)方法key.innerHTML代表这个标签对之间的值,比如说<p id="p">test</p>
那么key.innerHTML代表“test”这个值。想必大家又要问了,那些标签可以写value,那些不可以,一方面,写多了自己就明白了,另一方面,你要是实在不知道写不写,那么就在标签里面写上value=“value”,当点击保存在此行的行首出现一个黄色的三角形感叹号,或者标签属性的下面有一条黄色短线的时候,那么这个标签是不能用的,也就说明这个标签不能有value值,否则的话,可以用value值。
一般来说成对的标签只有id属性,而单个标签类似<input/>这类标签既有id又有name属性;
<3>document.getElementByTagName("TagName").value;
这个方法,其实和<2>是一样的,得到的是一个数组集合。要想获得自己想要的目标值,就得遍历。
在此,希望对大家有帮助!