首页 > 其他分享 >Angular4_下拉框多选(支持响应式表单验证和模板驱动表单验证)

Angular4_下拉框多选(支持响应式表单验证和模板驱动表单验证)

时间:2023-04-30 21:02:54浏览次数:52  
标签:name form 验证 required 下拉框 id div 表单 class


支持Angular的响应式表单验证和模板驱动表单验证

效果图:

Angular4_下拉框多选(支持响应式表单验证和模板驱动表单验证)_Angular


Using with Template driven Forms


Skills * required

Angular




Name



Email Address * required


Submit


Name

 

Email

[email protected]

Skills

Angular

{ "name": "", "email": "[email protected]", "skills": [ { "id": 1, "itemName": "Angular" } ] }

Form status: "VALID"


Code




import { Component, OnInit } from '@angular/core';

 

 

 

Component({

 

'./views/using-in-form.html'

 

})

 

export class UsingWithFormExample implements OnInit

 

=

 

=

 

=

 

=

 

null,

 

'',

 

skills: []

 

};

 

= false;

 

this.submitted = true; }

 

constructor() { }

 

ngOnInit() {

 

 

 

this.itemList =

 

"id": 1, "itemName": "Angular"

 

"id": 2, "itemName": "JavaScript"

 

"id": 3, "itemName": "HTML"

 

"id": 4, "itemName": "CSS"

 

"id": 5, "itemName": "ReactJS"

 

"id": 6, "itemName": "HTML5"

 

];

 

 

 

this.settings =

 

"Select Skills",

 

'Select All',

 

'UnSelect All',

 

"myclass custom-class"

 

};

 

}

 

item: any) {

 

console.log(item);

 

console.log(this.selectedItems);

 

}

 

item: any) {

 

console.log(item);

 

console.log(this.selectedItems);

 

}

 

items: any) {

 

console.log(items);

 

}

 

items: any) {

 

console.log(items);

 

}

 

 

 

}


 

form (ngSubmit)="onSubmit()" #loginForm="ngForm" style="border: 1px solid #ccc; padding: 10px;">

 

div class="form-group">

 

label for="name">Skills</label>

 

angular2-multiselect [data]="itemList" [(ngModel)]="formModel.skills"

 

settings]="settings"

 

onSelect)="onItemSelect($event)"

 

onDeSelect)="OnItemDeSelect($event)"

 

onSelectAll)="onSelectAll($event)"

 

onDeSelectAll)="onDeSelectAll($event)" name="skills" #skills="ngModel" required>

 

angular2-multiselect>

 

div [hidden]="skills.valid" class="alert alert-danger">

 

div [hidden]="!skills.hasError('required')">Atleast one Skill is required</div>

 

div>

 

div>

 

div class="form-group">

 

label for="name">Name</label>

 

input type="text" class="form-control" id="name" required pattern="[a-zA-Z][a-zA-Z ]+" [(ngModel)]="formModel.name" name="name"

 

name="ngModel">

 

div [hidden]="name.valid || name.pristine" class="alert alert-danger">

 

div [hidden]="!name.hasError('required')">Name is required</div>

 

div [hidden]="!name.hasError('pattern')">Only alphabetsallowed</div>

 

 

 

div>

 

div>

 

div class="form-group">

 

label for="name">Email Address</label>

 

input type="text" class="form-control" id="emailaddress" required [(ngModel)]="formModel.email" name="email" pattern="^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,3})+$"

 

email="ngModel">

 

div [hidden]="email.valid || email.pristine" class="alert alert-danger">

 

div [hidden]="!email.hasError('required')">Email is required</div>

 

div [hidden]="!email.hasError('pattern')">Email format should be <small><b>[email protected]</b></small></div>

 

div>

 

div>

 

button type="submit" class="btn btn-success btn-block" [disabled]="!loginForm.form.valid">Submit</button>

 

form>


view raw using-with-forms.html hosted with ❤ by  GitHub



官网:https://cuppalabs.github.io/angular2-multiselect-dropdown/#/usinginform

标签:name,form,验证,required,下拉框,id,div,表单,class
From: https://blog.51cto.com/u_15976398/6238253

相关文章

  • 关于uniapp表单验证(uview)的坑
    uniapp在验证表单出现this.$refs.uForm.setRules(this.rules)ErrorinonReadyhook:"TypeErr的错误。在webh5在上,就会容易错误,语句比较严格。出现this.$refs.uForm.setRules(this.rules)ErrorinonReadyhook:"TypeErr的的原因是在onReady写两条初始化验证onReady()......
  • 成功绕过阿里无痕验证码,一键爬取飞瓜数据
    成功绕过阿里无痕验证码,一键爬取飞瓜数据飞瓜数据的登录接口,接入了阿里云的无痕验证码;通过接口方式模拟登录,难度比较高。所以,我们使用自动化的方式来实现模拟登录,并且获取到cookie数据。[阿里无痕验证码]https://help.aliyun.com/document_detail/122247.htm使用Playwrigh......
  • 动态增加表单方法--ff/ie
    ---------------------增加方法----------------------------<h3><center>批量增加评论</center></h3><BR><formaction=""method="post"οnsubmit="returncheck_form();"><inputtype="button"va......
  • Java 生成验证码
    后端:1、第一步生成验证码字符串privateStringgetCheckCode(){Stringbase="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ";intsize=base.length();Randomr=newRandom();StringBuildersb=newStringBuilder();for(inti=1;i<=4;i+......
  • Java 生成验证码
    1、第一步生成背景板publicvoidgenerateCheckCode(HttpServletRequestrequest,HttpServletResponseresponse)throwsIOException{//服务器通知浏览器不要缓存response.setHeader("pragma","no-cache");response.setHeader("cache-con......
  • Nutch介绍及使用(验证)
    1.Nutch介绍Nutch是一个开源的网络爬虫项目,更具体些是一个爬虫软件,可以直接用于抓取网页内容。现在Nutch分为两个版本,1.x和2.x。1.x最新版本为1.7,2.x最新版本为2.2.1。两个版本的主要区别在于底层的存储不同。1.x版本是基于Hadoop架构的,底层存储使用的是HDFS,而2.x通过使用Apac......
  • Django笔记三十二之session登录验证操作
    本文首发于公众号:Hunter后端原文链接:Django笔记三十二之session登录验证操作这一篇笔记将介绍session相关的内容,包括如何在系统中使用session,以及利用session实现登录认证的功能。这篇笔记将分为以下几个内容:session的使用流程session的配置和相关方法users模块......
  • document.forms[0],得不到文本框的值,没错误提示的错误,表单提交
    我测试错误信息,可是我明明往文本框里输入值了,却告诉我没输入值,还不报错,我就找原因,检查了好几遍,也没找出错误,最后定位在document.forms[0],因为我的一个jsp里有好几个form表单,我那个得不到值的是最后一个表单,第4个,我就把document.forms[0]改成了document.forms[......
  • 通过NG做用户登录验证接口返回的返回体做登录接口判断
    ng获取响应体的json里面的字段需要安装第三方模块ngx_devel_kit的ngx_http_set_misc_module的set_json_var指令,form-input-nginx-modulelocation/api{proxy_passhttp://backend;proxy_set_headerHost$host;proxy_set_headerX-Real-IP$remote_addr;pro......
  • element-ui中多个表单el-form进行显示/隐藏切换时校验失效
    问题描述:当一个弹窗或页面中含有多个表单(都需要校验),且需要进行显示/隐藏切换时,容易造成切换后的表单元素的校验失效。如下: 第一个表单的输入框都触发blur提示语后,切换至第二个表单第二个表单的输入框触发blur后,第一个输入框的校验失效了。返回后,第一个输入框触发blur,校验......