Angular2中select用法之设置默认值与事件详解


Posted in Javascript onMay 07, 2017

本文主要给大家介绍了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对象

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家学习或者使用Angular.js能带来一定的帮助,如果有疑问大家可以留言交流,谢谢大家对三水点靠木的支持。

Javascript 相关文章推荐
JavaScript中“+=”的应用
Feb 02 Javascript
Discuz! 6.1_jQuery兼容问题
Sep 23 Javascript
javascript 打印内容方法小结
Nov 04 Javascript
探讨js字符串数组拼接的性能问题
Oct 11 Javascript
浅析JavaScript中的变量复制、参数传递和作用域链
Jan 13 Javascript
JQuery fileupload插件实现文件上传功能
Mar 18 Javascript
EasyUI创建对话框的两种方式
Aug 23 Javascript
jQuery实用小技巧_输入框文字获取和失去焦点的简单实例
Aug 25 Javascript
es7学习教程之Decorators(修饰器)详解
Jul 21 Javascript
vue实现图书管理demo详解
Oct 17 Javascript
使用 Vue cli 3.0 构建自定义组件库的方法
Apr 30 Javascript
js实现筛选功能
Nov 24 Javascript
Angular.JS中指令ng-if、ng-show/ng-hide和ng-switch的使用教程
May 07 #Javascript
Angular.Js中ng-include指令的使用与实现
May 07 #Javascript
Angular.js中ng-include用法及多标签页面的实现方式详解
May 07 #Javascript
JavaScript的继承实现小结
May 07 #Javascript
vue2.0多条件搜索组件使用详解
Mar 26 #Javascript
Vue 进阶教程之v-model详解
May 06 #Javascript
jQuery动态追加页面数据以及事件委托详解
May 06 #jQuery
You might like
PHP学习笔记之二 php入门知识
2011/01/12 PHP
举例讲解PHP面对对象编程的多态
2015/08/12 PHP
遍历指定目录,并存储目录内所有文件属性信息的php代码
2016/10/28 PHP
ThinkPHP框架整合微信支付之Native 扫码支付模式二图文详解
2019/04/09 PHP
PHP笛卡尔积实现原理及代码实例
2020/12/09 PHP
VBS通过WMI监视注册表变动的代码
2011/10/27 Javascript
table对象中的insertRow与deleteRow使用示例
2014/01/26 Javascript
JavaScript优化专题之Loading and Execution加载和运行
2016/01/20 Javascript
jquery+json实现分页效果
2016/03/07 Javascript
初识简单却不失优雅的Vue.js
2016/09/12 Javascript
jQuery版AJAX简易封装代码
2016/09/14 Javascript
JavaScript中apply方法的应用技巧小结
2016/09/29 Javascript
浅谈jQuery中的eq()与DOM中element.[]的区别
2016/10/28 Javascript
Vue实现路由跳转和嵌套
2017/06/20 Javascript
浅谈Webpack 持久化缓存实践
2018/03/22 Javascript
vue2.0 移动端实现下拉刷新和上拉加载更多的示例
2018/04/23 Javascript
Vue如何实现响应式系统
2018/07/11 Javascript
浅谈微信JS-SDK 微信分享接口开发(介绍版)
2018/08/15 Javascript
Vue CLI3 如何支持less的方法示例
2018/08/29 Javascript
详解如何理解vue的key属性
2019/04/14 Javascript
echarts统计x轴区间的数值实例代码详解
2019/07/07 Javascript
vuex管理状态仓库使用详解
2020/07/29 Javascript
微信小程序实现翻牌抽奖动画
2020/09/21 Javascript
[02:57]DOTA2亚洲邀请赛 SECRET战队出场宣传片
2015/02/07 DOTA
[02:32]DOTA2亚洲邀请赛 C9战队出场宣传片
2015/02/07 DOTA
python创建和使用字典实例详解
2013/11/01 Python
Python实现字符串格式化的方法小结
2017/02/20 Python
浅谈Python基础—判断和循环
2019/03/22 Python
django框架实现一次性上传多个文件功能示例【批量上传】
2019/06/19 Python
Python 的AES加密与解密实现
2019/07/09 Python
Python3多线程版TCP端口扫描器
2019/08/31 Python
使用SimpleITK读取和保存NIfTI/DICOM文件实例
2020/07/01 Python
JAVA程序员自荐书
2014/01/30 职场文书
端午节演讲稿
2014/05/23 职场文书
四风个人对照检查材料思想汇报(办公室通用版)
2014/10/07 职场文书
导游词之湖北武当山
2019/09/23 职场文书