input
,span
或div
標籤上的name
屬性的用途是什麼?是否應該使用id
標籤?從Mozilla's documentationhtml name屬性的用途是什麼?
實施例:
<label for="User">Click me</label>
<input type="text" id="User" name="Name" />
input
,span
或div
標籤上的name
屬性的用途是什麼?是否應該使用id
標籤?從Mozilla's documentationhtml name屬性的用途是什麼?
實施例:
<label for="User">Click me</label>
<input type="text" id="User" name="Name" />
的name
屬性識別輸入value
如果它通過表單的傳統GET
或POST
發送到服務器。
具體到例如,如果您有:
<form action="http://localhost" method="POST">
<label for="User">Click me</label>
<input type="text" id="User" name="Name" value="foo" />
<input type="submit" value="submit" />
</form>
,並提交表單,服務器localhost
將收到內容主體,如:
Name=foo
這是另一篇文章中提到,通常是通過像PHP這樣的服務器端語言進行分析,使其更易於使用。
id
屬性標識輸入到DOM
。如果您指定的輸入不是name
而是id
,並嘗試通過GET
或POST
提交,則服務器將不會正確解析它。
如果定義一個鏈路(A-元),並且它定義了一個名稱,可以使用它作爲一個錨點。 請參閱:http://www.w3schools.com/tags/att_a_name.asp
或者更一般地說:https://developer.mozilla.org/en-US/docs/Web/API/Element.name
該頁面說名稱屬性對HTML5無效 – northben 2014-09-26 14:29:16
name屬性是當你使用的是其他語言如PHP讀取和寫入數據到數據庫或其他文件。要引用上面的文本字段,可以引用其名稱爲「Name」,並將「Name」文本字段中的值寫入數據庫。
希望這有助於澄清事情..
這是爲了避免使用jQuery按類或ID選擇字段嗎? – northben 2014-09-26 14:28:39
它有些不同 - jQuery使用類名和id名。我知道PHP使用html標籤的名稱來引用它.. – heinkasner 2014-09-26 14:50:31
名稱應像<input>
表單域使用,它不應該在<span>
或<div>
使用。 名稱在錨標籤上已過時,您應該使用id代替。
檢查這個mozilla link更多:
名稱獲取或設置一個DOM對象的名稱屬性;它僅適用於以下元素:
<a>
,<applet>
,<button>
,<form>
,<frame>
,,<img>
,<input>
,<map>
,<meta>
,<object>
,<param>
,<select>
和<textarea>
名稱標籤的用途是什麼?如果我沒有,它會對我的表格有什麼不同? – northben 2014-09-26 14:27:42
如果刪除此屬性,則該輸入的值將不會用於提交給服務器:http://www.w3.org/TR/html5/forms.html#constructing-form-data-set – 2014-09-26 15:23:02
在input
元素中,name
屬性定義了控件的名稱。只有具有名稱的控件才能「成功」,即可以貢獻給發送到服務器的表單數據集。因此,爲了使提交給服務器端處理的控件的價值不可或缺。id
屬性與此無關;它有自己的用途,例如幫助將標籤與控件相關聯,如示例中所示。
因此,如果您不需要提交控制值,則不需要name
屬性。例如,如果您有像這樣的單個提交按鈕,則不需要它;但如果你有幾個提交按鈕,並且你需要識別,服務器端,哪一個被使用,你需要它。如果表單數據未發送到服務器端處理,但僅在客戶端處理中處理,則不使用name
屬性,因爲您可以用其他方式訪問這些值。
在span
和div
元素中,name
屬性在所有HTML版本中都是無效的。如果使用它,它將被簡單地忽略,除非它在DOM中的attributes
屬性中存儲(如同任何無效屬性),並且可以在客戶端腳本中訪問。
考慮到問題標題中的一般問題,name
屬性在某些元素中被允許和識別,在其他元素中不允許和忽略,並且在允許的情況下,其含義在元素的定義中定義。這些定義之間沒有太多相同之處。
一些混淆因「name
屬性已被棄用/過時」等語句引起。這些語句在某些HTML版本的某些元素中對此屬性是正確的,但例如在input
元素中,它仍然是正式的和必需的。
名稱用於表單 – Hacketo 2014-09-26 14:13:29
https://developer.mozilla.org/en-US/docs/Web/API/Element.name – loveNoHate 2014-09-26 14:14:40
「name獲取或設置DOM對象的name屬性;它僅適用於以下元素:,