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

我想知道(特别是关于HTML表单)是否出于任何原因需要或鼓励同时使用两者。


当前回答

Id:

它用于通过文档对象模型(DOM)(通过JavaScript或CSS样式)识别HTML元素。Id在页面中应该是唯一的。

名称对应于表单元素,并标识返回到服务器的内容。

例子:

<form action="action_page.php" id="Myform">
    First name: <input type="text" name="FirstName"><br>
    <input type="submit" value="Submit">
</form>

<p>The "Last name" field below is outside the form element, but still part of the form.</p>
Last name: <input type="text" name="LastName" form="Myform">

其他回答

下面的论坛主题有相同基本问题的答案,但基本上,id用于脚本标识,name用于服务器端。

HTML控件的id与name属性

在表单提交中发送数据时使用name属性。不同的控件响应不同。例如,您可能有几个具有不同id属性但名称相同的单选按钮。提交后,响应中只有一个值-您选择的单选按钮。

当然,这还不止于此,但它肯定会让你朝着正确的方向思考。

id和名称之间没有字面上的区别。

name是一个标识符,在浏览器发送的HTTP请求中用作与元素的value属性中包含的数据相关联的变量名。

另一方面,id是浏览器、客户端和JavaScript的唯一标识符。因此,表单需要一个id,而其元素需要一个名称。

id更具体地用于向唯一元素添加属性。在DOM方法中,Id在JavaScript中用于引用要在其上执行操作的特定元素。

例如:

<html>

<body>
    <h1 id="demo"></h1>

    <script>
        document.getElementById("demo").innerHTML = "Hello World!";
    </script>
</body>

</html>

name属性也可以实现这一点,但最好在表单中使用id,而在小表单元素(如input标记或select标记)中使用name。

Id:

它用于通过文档对象模型(DOM)(通过JavaScript或CSS样式)识别HTML元素。Id在页面中应该是唯一的。

名称对应于表单元素,并标识返回到服务器的内容。

例子:

<form action="action_page.php" id="Myform">
    First name: <input type="text" name="FirstName"><br>
    <input type="submit" value="Submit">
</form>

<p>The "Last name" field below is outside the form element, but still part of the form.</p>
Last name: <input type="text" name="LastName" form="Myform">

根据个人经验和W3Schools属性描述:

ID是一个全局属性,几乎适用于HTML中的所有元素。它用于唯一标识网页上的元素,其值主要从前端访问(通常通过JavaScript或jQuery)。

name是对HTML中的特定元素(如表单元素等)有用的属性。它的值大部分被发送到后端进行处理。

HTML属性引用