2018年5月31日 星期四

HTML中id、name、class 區別

HTML中id、name、class 區別

https://read01.com/zh-tw/oEkO4.html#.WxCLtEiFNPY

原文網址:https://read01.com/oEkO4.html

name的用途
1)主要是用於獲取提交表單的某表單域信息, 作為可與伺服器交互數據的HTML元素的伺服器端的標示,比如input、select、textarea、框架元素(iframe、frame、 window的名字,用於在其他frame或window指定target )和button等,這些元素都與表單(框架元素作用於form的target)提交有關,瀏覽器會根據name來設定發送到伺服器的request, 在表單的接收頁面只接收有name的元素, 所以賦ID的元素通過表單是接收不到值的。 我們可以在伺服器端根據其Name通過Request.Params取得元素提交的值。在form裡面,如果不指定name,就不會發送到伺服器端。

2)HTML元素Input type='radio'分組,我們知道radio button控制項在同一個分組類,check操作是mutex的,同一時間只能選中一個radio,這個分組就是根據相同的name屬性來實現的。

3)建立頁面中的錨點,我們知道<a href="URL">link</a>是獲得一個頁面超級連結,如果不用href屬性,而改用name,如:<a name="PageBottom"></a>,我們就獲得了一個頁面錨點,如<strong><aname="1" id="1"></a>Experience (XP)</strong>,詳見 示例

4)作為對象的Identity,如Applet、Object、Embed等元素。比如在Applet對象實例中,我們將使用其name來引用該對象。

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

6)某些特定元素的屬性,如attribute,meta和param。例如為Object定義參數<PARAM NAME = "appletParameter" VALUE = "value">或Meta中<META NAME = "Author" CONTENT = "Dave Raggett">。

當然HTML元素的name屬性在頁面中也可以起那麼一點ID的作用,因為在DHTML對象樹中,我們可以使用document.getElementsByName來獲取一個包含頁面中所有指定Name元素的對象數組。Name屬性還有一個問題,當我們動態創建可包含Name屬性的元素時,不能簡單的使用賦值element.name = "..."來添加其Name,而必須在創建Element時,使用document.createElement('<element name = "myName"></element>')為元素添加Name屬性。這是什麼意思啊?看下面的例子就明白了。
https://read01.com/zh-tw/oEkO4.html#.WxCLtEiFNPY



沒有留言:

張貼留言