【发布时间】:2016-02-24 09:10:26
【问题描述】:
我正在使用 angular2,我有一个下拉列表,并且我有一个要在 (change) 事件上调用的函数。但是这个事件没有触发。以下是我的代码
import {Component, EventEmitter, OnInit} from 'angular2/core';
import {perPageCount} from './interface';
import {CORE_DIRECTIVES} from 'angular2/common';
@Component({
selector: 'table-content',
template:
`<div class="dropdown-wrap ">
<select name="" tabindex="1" (change)="onSelect($event.target.value)">
<option *ngFor="#perPageCount of perPageCounts; #i=index" value="{{perPageCount.value}}" [attr.selected]="i == 0 ? true : null" >
{{perPageCount.text}}
</option>
</select>
</div>`,
providers: [CORE_DIRECTIVES]
})
export class tablecontent {
public perPageCounts: perPageCount[] = [
{ text: 10, value: 1 },
{ text: 25, value: 2 },
{ text: 50, value: 3 },
{ text: 100, value: 4 }
];
public ipp: number = this.perPageCounts[0].text;
onSelect(value) {
this.ipp = null;
for (var i = 0; i < this.perPageCounts.length; i++) {
if (this.perPageCounts[i].value == value) {
this.ipp = this.perPageCounts[i].text;
console.log(this.ipp)
}
}
}
下拉列表正在加载,但onSelect(value) 函数未触发!请有人帮忙!!
【问题讨论】:
-
你使用哪个版本的 Angular?
-
@ThierryTemplier 2.0.0-beta.7
-
谢谢!为什么要将
CORE_DIRECTIVES设置为 providers 属性? -
其实我是在做一个试错法..我也把
CORE_DIRECTIVES放在指令属性中..但显示相同的结果 -
事实上,你不再需要设置它们了 ;-)
标签: angular angular2-directives