将ng-bind与变量谓词一起使用

时间:2014-09-16 18:51:39

标签: javascript angularjs

是否可以为ng-bind语句使用谓词值。

例如,我想绑定一个td元素,它将改变它动态显示的属性。

<td ng-bind="user.month"></td

如果我想将该元素绑定动态更改为

,该怎么办?
<td ng-bind="user.week"></td>

实现这一目标的最佳方法是什么。我有一个select元素,用于确定哪个谓词应该用于绑定。

2 个答案:

答案 0 :(得分:2)

您可以使用[]对象表示法执行此操作,其中将[]

中绑定的变量绑定到

假设你有:

<select ng-model="models.selectVal">

范围内的一些数据如:

 $scope. data = {
    item1: 'Text in item 1',
    item2: 'Item 2 text'
  }

然后你可以这样做:

 <div ng-bind="data[models.selectVal]"></div>

DEMO

答案 1 :(得分:1)

你不能那样做。 有两种方法可以解决您的问题。 首先(和我推荐的那个),不要改变绑定。在您的范围中添加一个额外字段并更改该字段。 第二个选项,您可以更改ng绑定,然后重新编译角度模板,请参阅Angular compile documentation

我希望这有用。 祝你好运!!