HTML中ID與NAME的差別

巴扎黑
發布: 2017-04-05 09:43:52
原創
1682 人瀏覽過

可以說幾乎每個做過Web開發的人都問過,到底元素的ID和Name有什麼差別阿?為什麼有了ID還要有Name?而同樣我們也可以得到最經典的答案:ID就像是一個人的身分證號碼,而Name就像是他的名字,ID顯然是唯一的,而Name是可以重複的。

上面一段對於ID和Name的解答說的太籠統了,以下我們來具體探討一下。

一、name和id 都可以用來呼叫html中的元素

當我們需要在腳本裡存取頁面內一個html元素的時候,一般都是透過指定HTML元素的id或name

# WEB標準下可以透過getElementById() 、getElementsByName() 、 getElementsByTagName()存取HTML文件中的任一個元素。

要存取某一特定元素盡量用標準的document.getElementById(id)。

如果一個文件中有兩個以上的標籤NAME相同,那麼document.getElementsByName(name)就可以取得這些元素來組成一個陣列。

存取標籤則用標準的document.getElementByTagName(tag)。

注意:id 標識的是大小寫敏感的,而name基本上沒有什麼要求,甚至可以用數字。

二、什麼情況下必須用name?

1.表單元素(例如:form、input、textarea、select 、button 等)通常與表單提交有關,在表單的接收頁面只接收有name的元素,賦id的元素透過表單是接收不到值的。

2.表單元素複選框checkbox、單選按鈕 radio 通常會對應多個控件,這時必須用name屬性來實現分組。同一組使用同一個name。使兩個題目的選項之間不會產生幹擾。

3.框架元素(iframe、frame)的名字,用於在其他iframe、frame指定target。

4.建立頁面中的錨點,我們知道link是獲得一個頁面超級鏈接,如果不用href屬性,而改用name,如:,我們就拿到了一個頁面錨點。

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

6、某些特定元素的屬性,如attribute,meta和param。例如為Object定義參數或Meta中或Meta中

三、什麼情況下必須用id ?

1.label與form控件的關聯。例如:

<label for="myInput">文本录入框</label>
<input id="myInput" type="text" />
登入後複製

2、id 可以用來設定一個css樣式。例如:

<style type="text/css">
#my
{
      font-size: 12px;
      color: red;
}
</style>
<p id="my">设置字体大小和颜色</p>
登入後複製

               

以上是HTML中ID與NAME的差別的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!