Select 角度2获取<;选项>;关于变化

Select 角度2获取<;选项>;关于变化,select,angular,Select,Angular,我的选择有一个数组: private ranges = [ { text: "Last 30 days", value: 30 }, { text: "Last 60 days", value: 60 }, { text: "Last 90 days", value: 90 }, { text: "Last 365 days", value: 365 }, { text: "All", value: '' } ]; 然后选择: <select id="Activity

我的选择有一个数组:

private ranges = [
  { text: "Last 30 days", value: 30 },
  { text: "Last 60 days", value: 60 },
  { text: "Last 90 days", value: 90 },
  { text: "Last 365 days", value: 365 },
  { text: "All", value: '' }
];
然后选择:

<select id="ActivityRange" #sel (change)='select(sel.value)'>
  <option *ngFor="#range of ranges" [value]="range.value">
   {{range.text}}
  </option>
</select>

以下是您应该使用的

,即:

<option *ngFor="#range of ranges" [value]="range.value">

我必须使用[attr.value]使其适用于最新的Angular 2版本:

 <option *ngFor="#range of ranges" [attr.value]="range.value">


@GünterZöchbauer,我认为这是另一个问题。这是关于事件绑定的。这是关于属性绑定的。这仍然是控制台。记录文本值。请参阅plunkSure,但当事件绑定不起作用时,它也可能在属性绑定中不起作用。因此,如果您检查了这是否有效,我的问题是:)我检查了,但正如您和@misshap指出的,我不小心将我的控制台.log()更改留在了plunk中,所以这才是真正的答案。。。我会更新的,谢谢。我真的在尝试将数组中每个项的value属性设置为每个项的value属性,并在更改时获得它。这不是我在这里谈论的转换问题。仅供参考,
[value]=“range.value”
在beta.15上运行良好。我在回答中更新了Plunker以使用beta.15,它仍然有效。而且,角度文档在开发指南中使用
[value]=“…”
。所以这可能是将值绑定到选项元素的推荐方法。@MarkRajcok是的,我今天也注意到了。你的答案是公认的。这解决了我的问题。你有没有解释为什么
[value]=“range.value”
不能产生期望的结果,即绑定到
文本而不是
select(selectedValue) {
   console.log(selectedValue);
}
 <option *ngFor="#range of ranges" [attr.value]="range.value">