html中NAME和ID區別

2022-07-28 00:21:18 字數 1916 閱讀 5918

name

的最大作用就是可以與服務端進行互動。struts2中要設name的屬性才能在action中取到值,id取不到。

id與name的作用,作為標籤的識別符號,基本上是一樣的.name是老方法,id是在name基礎上發明的,後來才有的,"現代化"一點,用的範圍廣一點.

(name有時有自己的用途)

table 中 name 無定義, 應當用 id.

有些標籤,可以同時有name和id.

在乙個html網頁中,id是唯一的,即只有某乙個標籤,或某乙個塊的識別符號是這個id.

id 在html中的作用:

(1) 用id選擇相應的style sheet(風格).

(2) 鏈結的目的地

(3) 指令碼語言用它找目的地(找該id的標籤)

(4) 作為名字,用於宣告某object element

(5) 作為乙個標籤或塊的區分標緻(用於從html網頁中取出資料放入資料庫或把html翻譯成別的格式,等情況).

這幾天碰到乙個不大不小的問題:在提交表單到伺服器頁面時,總是提交不過去,最後解決了,問題出在了我把html控制項中id屬性與name屬性給弄混了.仔細看了一下,html控制項中有id和name這兩個屬性,而web控制項中則只有id屬性.從網上找了以下解釋:

可以說幾乎每個做過web開發的人都問過,到底元素的id和name有什麼區別阿?為什麼有了id還要有name呢?!

而同樣我們也可以得到最classical的答案:id就像是乙個人的身份證號碼,而name就像是他的名字,id顯然是唯一的,而name是可以重複的。

id就是client端html元素的identity。而name其實要複雜的多,因為name有很多種的用途,所以它並不能完全由id來代替,從而將其取消掉。具體用途有:

用途1:

作為可伺服器互動資料的html元素的伺服器端的標示,比如input、select、textarea、和button等。我們可以在伺服器端根據其name通過request.params取得元素提交的值。

用途2: html元素input type='radio'分組,我們知道radio

button控制項在同乙個分組類,check操作是mutex的,同一時間只能選中乙個radio,這個分組就是根據相同的name屬性來實現的。

用途3: 建立頁面中的錨點,我們知道link是獲得乙個頁面超級鏈結,如果不用href屬性,而改用name,如:,我們就獲得了乙個頁面錨點。

用途4:

在img元素和map元素之間關聯的時候,如果要定義img的熱點區域,需要使用其屬性usemap,使usemap="#name"(被關聯的map元素的name)。

用途6: 某些特定元素的屬性,如attribute,和param。例如為object定義引數。

顯然這些用途都不是能簡單的使用id來代替掉的,所以html元素的id和name的卻別並不是身份證號碼和姓名這樣的區別,它們更本就是不同作用的東西。

當然html元素的name屬性在頁面中也可以起那麼一點id的作用,因為在dhtml物件樹中,我們可以使用document.getelementsbyname來獲取乙個包含頁面中所有指定name元素的物件陣列。

在這裡順便說一下,要是頁面中有n(n>1)個html元素的id都相同了怎麼辦?在dhtml物件中怎麼引用他們呢?如果我們使用aspx頁面,這樣的情況是不容易發生的,因為aspnet程序在處理aspx頁面時根本就不允許有id非唯一,這是頁面會被丟擲異常而不能被正常的render。要是不是動態頁面,我們硬要讓id重複那ie怎麼搞呢?這個時候我們還是可以繼續使用document.getelementbyidx_x獲取物件,只不過我們只能獲取id重複的那些物件中在html

render時第乙個出現的物件。而這時重複的id會在引用時自動變成乙個陣列,id重複的元素按render的順序依次存在於陣列中。

html中name和id的區別

可以說幾乎每個做過web開發的人都問過,到底元素的id和name有什麼區別阿?為什麼有了id還要有name呢?而同樣我們也可以得到最classical的答案 id就像是乙個人的身份證號碼,而name就像是他的名字,id顯然是唯一的,而name是可以重複的。上週我也遇到了id和name的問題,在頁面裡...

HTML中name和id的區別

name原來是為了標識之用,但是現在根據規範,都建議用id來標識元素。但是name在以下用途是不能替代的 1.表單 form 的控制項名,提交的資料都用控制項的name而不是id來控制。因為有許多name會同時對應多個控制項,比如checkbox和radio,而id必須是全文件中唯一的。此外瀏覽器會...

HTML元素ID和Name區別

id就像是乙個人的身份證號碼,而name就像是他的名字,id顯然是唯一的,而name是可以重複的。上週我也遇到了id和name的問題,在頁面裡輸入了乙個input type hidden 只寫了乙個id sliceinfo 賦值後submit,在後台用request.params sliceinfo...