id就像是一个人的身份证号码,name就是他的名字,显然,id是不可以重复的,而name是可以重复的,两者都是为了标识对象名称。
它们所不同的是:name是Netscape的、id是Microsoft的。
表单元素(form input textarea select)与框架元素(iframe frame)用name。
这些元素都与表单(框架元素作用于form的target)提交有关,
在表单的接收页面只接收有name的元素。例如:request.Form("tyxl"),其中tyxl是提交页面中某个元素的name属性值。所以通过表单接收到的不是id值,而是name值。
在控制脚本元素,事件处理是一般都是用的id值,如:
<FORM act
<SCRIPT LANGUAGE=javas
<!--
alert(form2.name)
//alert(form1.name) 就是错误的
//-->
</SCRIPT>
获取id值的另一个方法就是 id=document.getElementById("id")
同理,获取name值的另一个方法是 name=document.getElementByName("name")
赋 name: document.formName.inputName document.frames("frameName")
赋 ID : document.all.inputID document.all.frameID
只能赋ID不能赋name的元素:(除去与表单相关的元素都只能赋ID)
body li a table tr td th p div span pre dl dt dd font b 等等
来源:https://www.cnblogs.com/huanying99/archive/2011/04/08/2009283.html