Javascript 巨大网页中的名称或id

Javascript 巨大网页中的名称或id,javascript,jquery,asp.net,html,Javascript,Jquery,Asp.net,Html,今天,我们可以编写包含许多用户控件、jquery插件和许多html元素的巨大网页。 有时候有一个jquery插件,它创建一个div并为其分配Id。当多次使用这种插件时,两个元素的id相同 使用name是否比使用id更好?我相信为jquery元素使用类有助于避免很多问题 如果控件在服务器端运行,则使用名称(尤其是ASP.NET)可能会导致问题,因此在HTML中呈现方式会有所不同。我相信为jquery元素使用类有助于避免许多问题 如果控件在服务器端运行,使用名称(尤其是ASP.NET)可能会导致问题

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


使用name是否比使用id更好?

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


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

我相信为jquery元素使用类有助于避免许多问题


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

Id和名称在HTML/DOM标准中有不同的含义。请查看问题以了解更多信息:

Id和名称在html/DOM标准中有不同的含义。请查看问题以了解更多信息:

页面上不应有两个id相同的元素。例如,当您在jQuery中使用这样的id选择器时

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

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

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

在这种情况下,PHP将接收一个数组服务器端

页面上不应有两个id相同的元素。例如,当您在jQuery中使用这样的id选择器时

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

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

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

在这种情况下,PHP将接收到一个数组服务器端插件,该插件根据设计为DOM元素生成相同的ID,不值得使用-它显示了糟糕的编程。好的插件总是使用唯一的ID,例如通过添加一些索引。 所以,不要使用这样的插件


名称与web表单之外的元素并不相关-例如,不应具有名称,此属性仅对表单元素有意义,在本例中是,最好使用它,因为您可以为多个元素指定相同的名称。

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


名称与web表单之外的元素并不相关-例如,不应该有名称,此属性仅对表单元素有意义,在本例中,是的,最好使用它,因为可以为多个元素指定相同的名称。

我认为在jquery中使用名称属性太慢,因为它非常依赖DOM搜索。Id更快,但在您的情况下。。。。我不知道我想在jquery中使用name属性太慢了,因为它非常依赖DOM搜索。Id更快,但在您的情况下。。。。我不知道所以你建议使用类而不是名称?但这不是class属性的目的。为什么在您看来class比name更好?在使用jQuery时,使用类来引用控件是很常见的。我发现这是最好的,因为您可以引用包括父类在内的所有元素,以确保只引用正确的元素。例如$.container.left_column.widget.plugin;所以你建议使用类而不是名称?但这不是class属性的目的。为什么在您看来class比name更好?在使用jQuery时,使用类来引用控件是很常见的。我发现这是最好的,因为您可以引用包括父类在内的所有元素,以确保只引用正确的元素。例如$.container.left_column.widget.plugin;