HTML 中的name属性和id属性有什么区别?

2025-01-20 20:07:32
推荐回答(5个)
回答1:

ID 是唯一表示 ,整个页面唯一的,不允许重复
NAME 也就是名字,可以重复,整个页面任意个
例如:
document.getElementByIdx("xxx") 取出来是唯一的
document.getElementsByName("xxx") 取出来是个数组
下列有name属性
A, APPLET, attribute, BUTTON, EMBED, FORM, IMG, INPUT type=button, INPUT type=checkbox, INPUT type=file, INPUT type=hidden, INPUT type=image, INPUT type=password, INPUT type=radio, INPUT type=reset, INPUT type=submit, INPUT type=text, LINK, MAP, OBJECT, RT, RUBY, SELECT, TEXTAREA
下面的有ID,
STYLE, A, ACRONYM, ADDRESS, APPLET, AREA, B, BASE, BASEFONT, BDO, BGSOUND, BIG, BLOCKQUOTE, BODY, BR, BUTTON, CAPTION, CENTER, CITE, CODE, COL, COLGROUP, COMMENT, CUSTOM, DD, DEL, DFN, DIR, DIV, DL, DT, EM, EMBED, FIELDSET, FONT, FORM, FRAME, FRAMESET, HEAD, hn, HR, HTML, I, IFRAME, IMG, INPUT type=button, INPUT type=checkbox, INPUT type=file, INPUT type=hidden, INPUT type=image, INPUT type=password, INPUT type=radio, INPUT type=reset, INPUT type=submit, INPUT type=text, INS, ISINDEX, KBD, LABEL, LEGEND, LI, LINK, LISTING, MAP, MARQUEE, MENU, nextID, NOBR, NOFRAMES, NOSCRIPT, OBJECT, OL, OPTION, P, PLAINTEXT, PRE, Q, RT, RUBY, S, SAMP, SCRIPT, SELECT, SMALL, SPAN, STRIKE, STRONG, styleSheet, SUB, SUP, TABLE, TBODY, TD, TEXTAREA, TFOOT, TH, THEAD, TITLE, TR, TT, U, UL, VAR, WBR, XML, XMP

回答2:

ID的属性是最高级别的.而form中的name级别是比较低的.如果说我要取一个值的话用这两种方法来写.如下:
这是name的写法
window.document.form.name.value
而ID的话则只需要用
ID.value就能够直接抓出值来.因为它比window的级别还高.所以只需要这样用

跟一个人的权力一样,需要干什麼事要经过谁同意,而最高权力者则可以自己决定.而权力比较低得则需要经过上面的批准才能执行.这是一样的道理

回答3:

用途1:
作为可与服务器交互数据的HTML元素的服务器端的标示,比如input、select、textarea、和button等。我们可以在服务器端根据其Name通过Request.Params取得元素提交的值。
用途2:
HTML元素Input
type='radio'分组,我们知道radio
button控件在同一个分组类,check操作是mutex的,同一时间只能选中一个radio,这个分组就是根据相同的Name属性来实现的。
用途3:
建立页面中的锚点,我们知道href="URL">link是获得一个页面超级链接,如果不用href属性,而改用Name,如:name="PageBottom">,我们就获得了一个页面锚点。
用途4:
作为对象的Identity,如Applet、Object、Embed等元素。比如在Applet对象实例中,我们将使用其Name来引用该对象。
用途5:
在IMG元素和MAP元素之间关联的时候,如果要定义IMG的热点区域,需要使用其属性usemap,使usemap="#name"(被关联的MAP元素的Name)。
用途6:
某些特定元素的属性,如attribute,meta和param。例如为Object定义参数NAME
=
"appletParameter"
VALUE
=
"value">或Meta中NAME
=
"Author"
CONTENT
=
"Dave
Raggett">。

回答4:

ID一般是用来标识控件的 NAME是用来取值的
css中如果要给某个控件加上样式表,那么就是用ID

回答5:

type="password"
此元素为一个密码输入框(输入字符的时候只显示*号)
name="txtpassword"
此元素的名称为txtpassword
(在同一个html文档中,name可以有重复)
id="pwd"此元素的唯一标识为pwd(在同一个html文档中,id不可以有重复)
name可以理解成一个group,就是分组。
如果你有三个radiobutton,
那么,radio1和radio2是互斥的,因为他们同属group1
但是radio3和另外两个radio没有关系