巨大网页中的名称或ID

时间:2011-10-04 08:12:40

标签: javascript jquery asp.net html

今天我们可以编写包含许多用户控件,jquery插件和大量html元素的大型网页。
有时会有一个jquery插件创建一个div并为其分配Id。当多次使用这种插件时 - 两个元素具有相同id的情况。

使用“name”比使用“id”更好吗?

4 个答案:

答案 0 :(得分:3)

通过设计为DOM元素生成相同ID的插件不值得使用 - 它显示了糟糕的编程。好的插件总是使用唯一的ID,例如添加一些索引 所以,不要使用这样的插件。

名称与网络表单之外的元素无关 - 例如<div>不应该有name,此属性仅对表单元素有意义,在这种情况下是,更好地将其用作你可以给多个元素命名。

答案 1 :(得分:1)

Id和Name在html / DOM标准中有不同的含义。有关详细信息,请查看问题Difference between id and name attributes in HTML:)

答案 2 :(得分:1)

页面上不应该有两个具有相同ID的元素。例如,当您在jQuery中使用id Selector时,就像这样

 $('#id')

它始终只返回一个元素,而不管具有相同id的元素数量。如果必须克隆元素,请动态使用具有类或gerate id的元素。

当您提交数据时,名称很重要:如果两个元素具有相同的名称,则只会发布最新的,除非您使用php支持的数组表示法:

<input type='checkbox' name='ids[]' value='3'>
<input type='checkbox' name='ids[]' value='6'>

在这种情况下,PHP将接收阵列服务器端

答案 3 :(得分:0)

我相信使用jquery元素的类有助于避免很多问题。

如果控件在服务器端运行,并且因此在HTML中以不同方式呈现,则使用名称(尤其是使用ASP.NET)可能会导致问题。