Angular2中select用法之设置默认值与事件详解
本文主要给大家介绍了Angular2中select用法之设置默认值与事件的相关内容,分享出来供大家参考学习,下面来看看详细的介绍:
一、设置默认值:
现在有三个学生小明,小红,小黑,对双向绑定的student设置你想要的select值就可以在下拉框默认选中
code1:
设置”请选择”为默认项,只需要把变量student设置为‘',即可默认到“请选择”,需要注意的是
<option value="">
请选择</option>使用的是value(这是HTML原生的属性)
<option *ngFor="let item of students" [value]='item'>{{item}}</option>
使用的是[value](在ng2中使用ngFor时,value需要用ng2的语法,即[value])
let students:string[]=['xiaoming','xiaohong','xiaohei']; let student:string=''; let info:string=''; <select [(ngModel)]="student"> <option *ngFor="let item of students" [value]='item'>{{item}}</option> </select>
code2:
当需要设置默认值到xiaoming时,只需要将变量student的初始值设为“xiaoming”
let students:string[]=['xiaoming','xiaohong','xiaohei']; let student:string='xiaoming'; let info:string=''; <select [(ngModel)]="student"> <option *ngFor="let item of students" [value]='item'>{{item}}</option> </select>
二、绑定事件
select下拉框主要通过ngModel和ngModelChange实现选择事件
如果你想要在select下拉框选中某一项时触发事件,可以将[(ngModel)]拆成ngModel和ngModelChange来实现
let students:string[]=['xiaoming','xiaohong','xiaohei']; let student:string=''; let info:string=''; setInfo(){ this.info=student; } <select [ngModel]="student" (ngModelChange)="student=$event;setInfo()"> <option value="">请选择</option> <option *ngFor="let item of students" [value]='item'>{{item}}</option> </select> {{info}}
在属性绑定中,一个值从模型中传到屏幕上的目标属性。 我们通过把名字括在方括号中来标记出目标属性, [] 。 这是一个 从模型到视图 的单向数据绑定。
在事件绑定中,值从屏幕上的目标属性传到模型中。 我们通过把名字括在圆括号中来标记出目标属性, () 。 这是一个 从视图到模型 的反向单向数据绑定。
在Angular2中[(x)] 的绑定目标时,会以x和xChange表示他的输入和输出属性。
代码中student=$event
原理如下ngModelChange是一个 Angular EventEmitter 类型的属性,当它触发时,它返回的是输入框的值
需要注意的是:目前select下拉框中不支持绑定json对象
更多关于AngularJS相关内容感兴趣的读者可查看本站专题:《AngularJS指令操作技巧总结》、《AngularJS入门与进阶教程》及《AngularJS MVC架构总结》
总结