ng-if内部的插值

时间:2015-04-23 01:48:59

标签: javascript angularjs

我在前端编写了一个使用AngularJS的应用程序,它使用指令动态创建表单元素,因此每个表单元素的名称都不会提前知道。

我目前正在尝试为每个元素实现表单验证,但这需要插值来确定每个表单元素的名称。这就是我试图做的事情:

<span class="error-msg" data-ng-if="form.dateInput{{ question.questionAnswerId }}.$error.required && submitted">
    Required
</span>

然而,这给了我以下错误:

Syntax Error: Token '{' is an unexpected token at column 15 of the expression [form.dateInput{{ question.questionAnswerId }}.$error.required && submitted] starting at [{{ question.questionAnswerId }}.$error.required && submitted].

由于这似乎不被允许,如果没有回答所需的表单元素,是否还有另一种显示消息的方法?

我能够在ng-class中插入每个表单元素的名称,如下所示,所以我认为它也适用于ng-if。

ng-class="{ 'has-error' : form.dateInput{{ question.questionAnswerId }}.$invalid && submitted }"

1 个答案:

答案 0 :(得分:3)

您不需要插值,只需直接访问该值,如:

data-ng-if="form.dateInput[question.questionAnswerId].$error.required && submitted"