将值和类绑定到Ember.TextField

时间:2013-12-08 16:54:29

标签: ember.js

我正在尝试将两个属性绑定到Ember文本字段,但它不起作用。

{{input type="text" value=name class="uk-width-1-1" placeholder="Name" required="" }}

如果errors.name为真,我如何将“错误”类绑定到此文本字段?

2 个答案:

答案 0 :(得分:7)

您要做的事情如下:

{{input type="text" value=name classBinding=":uk-width-1-1 errors.name:error" placeholder="Name" required=""}}

只要error.name真的是布尔值,就不需要计算属性。在classBindings中:uk-width-1-1将始终打印,只有在errors.name为true时才会出错。

仅供参考,请说您有错误和非错误类要使用。您可以执行errors.name:error:non-error,当errors.name为true时会出错,而当false为false时则出错。

答案 1 :(得分:1)

您可以将其更改为:

{{input type="text" value=name classBinding="textFieldClasses" placeholder="Name" required="" }}
在您的视图中,

在以下行中定义计算属性:

textFieldClasses: function() {
    var class = "uk-width-1-1";
    if (this.get('controller.content.errors.name')) class += "error";
    return class;
}.observes('controller.content.errors.name'),