HTML 形式的 id 和 name 属性的区别

Difference between id and name attributes in HTML form

id 和 name 属性有什么区别?它们似乎都具有提供标识符的相同目的。

我想知道(特别是关于 HTML 表格)是否有必要或出于任何原因鼓励同时使用这两种表格。如果两者一起使用,他们应该使用相同的吗?命名属性时喜欢 id="animal" 和 name="animal"

nameid的区别:

id用于标识页面中的HTML元素。 id 应该在页面内是唯一的。

name 对应于表单元素并标识回传到服务器的内容。

出于任何原因,有必要或鼓励同时使用两者? 没有必要,对于表单元素,只需名称就足够了,但如果您想做一些 CSSJS操作,在有id的元素上做就容易多了。

如果两者一起使用,他们应该使用相同的吗?不,它们彼此没有关系。

ID 通常用于 javascript 和 css,而名称主要用于使用后端语言(例如 [=13=)传递值(来自 url) ].

来自this article

The id attribute is a unique identifier of the HTML element. Each id attribute must be unique. It can be used as an anchor reference in URL. It isn’t associated with the data within the element.

The name attribute defines the name of the element. It is used in the HTTP request that is sent to the server as a variable name by the browser. This attribute is associated with the data within the element.

例如:

<html>
  <body>
    <h1>Radio Buttons</h1>
    <form action="/form/submit" method="post">
      <p>Select your gender:</p>
      <input type="radio" id="male" name="gender" value="male">
      <label for="male">Male</label><br>
      <input type="radio" id="female" name="gender" value="female">
      <label for="female">Female</label><br>
      <input type="radio" id="other" name="gender" value="other">
      <label for="other">Other</label>
      <br>
      <p>Select your age:</p>
      <input type="radio" id="age1" name="age" value="30">
      <label for="age1">0 - 25</label><br>
      <input type="radio" id="age2" name="age" value="60">
      <label for="age2">25 - 50</label><br>
      <input type="radio" id="age3" name="age" value="100">
      <label for="age3">50 - 80</label><br><br>
      <input type="submit" value="Submit">
    </form>
  </body>
</html>