<!-- Some place on the webpage -->
<input type="text" id="firstName">
<!-- Some other place on the same webpage, or maybe content ajaxed in later -->
<input type="text" id="firstName">
假设我有一个服务器端脚本,它生成一个 HTML 页面,其中包含一些输入字段,每个字段都有自己的 ID。一个服务器端类可能负责将输入字段添加到网页的一部分,而另一个类处理网页的另一部分。或者你可能有不同的程序员在页面的不同部分工作。我想避免与 HTML 输入字段 ID 发生冲突。这方面的一个例子可能是一个父表单,它有一个 jQuery 对话框弹出窗口,其输入字段 ID 与父表单相同。目前,我在 ID 前面加上生成它们的服务器端类的名称(以及一个下划线,以明确哪个部分是前缀)。要以这种方式获得完全唯一的 ID,我可能必须开始包含服务器端类的完整命名空间,这可能会使我的 ID 很长。
有没有比为输入添加前缀更好的方法或最佳实践是什么?我通常对所有变量使用 camelCase,只有这个例外。这是打破该规则的一个很好的例外吗?
你们大多数人在做什么?您是否正在改变选择这些输入字段而不是通过 ID 的方式?将输入字段包装在form
标签或div
标签中并将功能添加到服务器端以创建这些?(我想自由地不限制我包装这些输入的内容来选择它们。我的服务器端代码应该只生成客户端代码,该代码只在知道这些输入进入页面时才获取值,而不是知道页面上的任何其他标签。更容易管理。)您是否将 css 类添加到每组字段?