我应该在angularjs应用程序中使用ID作为HTML元素吗?

时间:2013-10-07 11:21:39

标签: javascript html angularjs

输入元素的'Id'和标签的'for',将标签与元素关联并使标签可点击。同样在JQuery / JavaScript中,使用id很容易找到元素。但是在angularjs中没有使用id和angularjs很少需要任何元素的id,所以我的第一个问题是:

  1. 我应该有ID才能使标签可点击吗?
  2. 现在,我们大多数人会建议,这取决于我的要求,所以我会说,我的要求是,我需要使标签可点击。这就是为什么,我只是将Ids放在所有输入元素中。但是当我尝试为常见的html模板/部分(例如地址)创建指令以使其可重用时,会出现另一个问题。我正在尝试为动态模板生成动态ID。当我的动态模板嵌套时,这变得复杂。它还会产生嵌套动态模板所需的ng问题。所以其他问题是:

    1. 是否值得拥有动态ID生成和复杂性,只需使标签可点击(这是UX的基本要求)?
    2. 在没有id的情况下,angulrjs有没有办法获得标签的'for'功能?

1 个答案:

答案 0 :(得分:1)

关于标签,您可以在其中包含表单元素:

<label>
    Label
    <input type="text"></input>
</label>

当您点击this jsFiddle中的标签时,输入字段将被聚焦,这也适用于其他输入标签类型。