1. 程式人生 > >HTML中標籤的屬性ID與Name的區別!

HTML中標籤的屬性ID與Name的區別!

ID和Name都可以用來標識一個標記,Javascript分別有兩個方法getElementById和getElementByName來定位Dom節點。
    區別如下:
   1、我們知道在網頁做Post提交時,是以Form(即表單域)為單位進行提交的,一個Form裡有若干個表單物件(如<input type="text" name="UserName" value="請輸入姓名"/>),同一個頁面裡可以為多個Form(Asp.net不同,它只允許有一個,且名字必須為Form1),在表單表提交到伺服器端後,可以直接通過Name屬性取到表單域的值,卻無法通過ID直接取到該表表單物件的值。
   2、同一個Form裡不能有多個name屬性相同的HTML標記,但如果一個網頁中有多個Form,則不同的Form裡可以有同個Name屬性的標記。而ID是全域性的,在一個HTML文件裡不能有多個節點使用相同的ID,無論它處在哪個Form裡。
   3、在建立CSS樣式的時候,可以建立ID樣式表(以#為字首),使具有該ID的樣式直接應用該樣式,而無法建立Name樣式表。
   4、在進行網頁編輯時建議使用ID來標識一個節點,而不是使用Name(除非是為了Post提交的需要),同樣使用Javascript進行Dom節點定位時建議使用getElementById方法,因為只有ID能唯一標識一個節點,而同一個網頁裡可能會有多個Name屬性相同的節點,它們分別處在不同的Form裡。