2

我是 AngularJS 的新手,但从我目前所见和所做的来看,这真是太棒了。我想要做的是在 HTML 属性内有一个 AngularJS 绑定,但将它与另一个字符串连接起来。我会这样做的主要地方是类和 id,因为我喜欢使用“thisform”和“thisdivid”等名称。我页面中的一个示例元素是:

<input type="checkbox" 
  name="tdl_task[]" 
  data-ng-checked="list.default" 
  id="tdl_task_{{ id }}" 
  data-ng-class="{tdl_item: true}" 
  data-ng-true-value="done" 
  data-ng-false-value="not_done" />

我希望它是这样的:

<input type="checkbox" 
  name="tdl_task[]" 
  data-ng-checked="list.default" 
  id="tdl_task_" + {{ id }} + "" 
  data-ng-class="{tdl_item: true}" 
  data-ng-true-value="done" 
  data-ng-false-value="not_done" />

但没有优点。我想这样做而不用 JavaScript 或 PHP 包装它,或者在控制器中为该属性创建另一个完整的绑定。

4

2 回答 2

1

为此,您必须创建一个指令。id 由 html 本身提供,您无法修改其行为。因此,创建您自己的自定义指令,该指令将获取您的 id 并将其分配为您的 html 元素的 id。

要了解有关指令的更多信息,请访问

指令的详细研究

于 2013-08-30T12:13:16.883 回答
0

自从提出问题以来,不确定这在 Angular 中是否是新的,但我遇到了完全相同的问题。事实证明,您可以通过在它前面加上反斜杠 () 来让 Angular 评估 + 替换车把,即id="tdl_task_\{{id}}"

于 2014-06-24T19:45:33.867 回答