Angular开发(八)-关于表单的基本认识
来源:互联网 发布:手机知乎怎样发表文章 编辑:程序博客网 时间:2024/06/04 23:30
说明:在
angular
中表单会默认使用交给angular
去处理,对于传统表单中写的action
或者method
都不生效了,如果不想交给angular
处理就要在表单中加入ngNoForm
属性
一、不使用form
标签的情况下
<div> <p> <input type="text" minlength="3" maxlength="6" required [(ngModel)]="formdata.username" name="username"/> <span [hidden]="username2.valid || username2.pristine">你输入有错误</span> </p> <p> <input type="radio" [(ngModel)]="formdata.sex" name="sex" value="男" />男 <input type="radio" [(ngModel)]="formdata.sex" name="sex" value="女" />女 </p> <p> <select name="selectoption" [(ngModel)]="interest" (ngModelChange)="change($event)"> <option *ngFor="let item of interests" [ngValue]="item.value">{{item.display}}</option> </select> </p> <!--使用局部模板变量时时显示输入数据--> <p>{{username2.value}}</p></div>
//ts文件interests: any[] = [ {value: "guangdong", display: "广东"}, {value: "jiangxi", display: "江西"}, {value: "hunan", display: "湖南"} ]; interest: any; hobby: boolean = true; change(event: any) { console.log(event); }
二、使用form
标签的时候就可以使用表单提交方法ngSubmit
提交数据
说明:
1、必须要写name
属性,angular
会根据name
来设置输出对象的key
2、每个表单中必须要加入ngModel
属性,如果要进行初始化值的时候就要用到双向绑定[(ngModel)]="sex"
<form #firstrForm="ngForm" (ngSubmit)="firstForm(firstrForm.value)"> <p> <input type="text" minlength="3" maxlength="6" required ngModel name="username" #username2="ngModel"/> <span [hidden]="username2.valid || username2.pristine">你输入有错误</span> </p> <p> <input type="radio" ngModel name="sex" value="男" />男 <input type="radio" ngModel name="sex" value="女" />女 </p> <p> <select name="selectoption" ngModel (ngModelChange)="change($event)"> <option *ngFor="let item of interests" [ngValue]="item.value">{{item.display}}</option> </select> </p> <p> <input type="submit" value="提交" /> </p> <p>你输入的信息:{{firstrForm.value|json}}</p> <p>{{username2.value}}</p></form>//ts代码跟上面的一样的
三、使用ngModelGroup
来包裹几个属性
<div ngModelGroup="pwd"> <p> <input type="password" name="psw1" ngModel placeholder="请输入密码"/> </p> <p> <input type="password" name="psw2" ngModel placeholder="请输入密码"/> </p> </div>
输出效果
四、表单的状态
- 1、ngForm会追踪整个表单控件的状态
- 2、ngModel会追踪其所在表单控件的状态(在控件上
#name1="ngModel"
)
五、表单中常见的事件
1 0
- Angular开发(八)-关于表单的基本认识
- Angular开发(十)-关于表单的基本认识
- Angular开发(五)-关于组件的基本认识
- Angular开发(十八)-路由的基本认识
- Angular开发(九)-关于响应式基本认识
- Angular开发(十一)-关于响应式表单及表单的校验
- Angular开发(十三)-服务的基本认识及利用服务实现组件间的通信
- Angular开发(二十四)-angular表单的校验
- 关于递归的基本认识
- 关于runtime的基本认识
- 关于linux的基本认识
- angular的下拉表单
- Angular开发(七)-关于组件的生命周期
- 关于变量的一些基本认识01
- 关于Linux的认识和基本指令
- 年总结(八):关于思考的重新认识
- IOS 开发: CGContext的基本认识
- ios开发及控件的基本认识
- Ionic学习--1.概述
- C++初探----直接运行exe会闪关
- 输出九九乘法表
- 练习 2-5 编写函数 any(s1, s2),将字符串 s2 中的任一字符在字符串 s1 中第一次 出现的位置作为结果返回。如果 s1 中不包含 s2 中的字符,则返回-1。
- DAG上的动态规划问题
- Angular开发(八)-关于表单的基本认识
- 分布式中hash取模算法
- 【个人笔记重点,不作为参考】主题:clear code
- C++笔记:左值和右值
- salesforce数据安全篇
- Java 9的14个新特性总结
- 美团推荐算法实践
- 2017.5.9 货车运输 思考记录
- Angular开发(九)-关于响应式基本认识