ExtJS入门教程03,form中怎能没有validation
接上篇内容,我们在学会extjs form的基本用法之后,今天我们来看看extjs form的validation功能。
必填项,就是不能为空(allowBlank)
效果:
代码:
{ xtype: "textfield", name: "UserName", fieldLabel: "用户名", allowBlank: false, flex: 1 }
输入长度限制,maxLength/minLength
效果:
&
代码:
{ xtype: "textfield", name: "UserName", fieldLabel: "用户名", allowBlank: false, maxLength: 10, minLength: 3, flex: 1 }
值大小限制,maxValue/minValue
值大小的限制常用于numberfield、datefield,可以指定一个可用值的范围。
效果:
&
代码:
{ xtype: "numberfield", name: "Age", fieldLabel: "年龄", maxValue: 60, minValue: 18, flex: 1 }
vtype验证
vtype提供了一些公用的验证类型,它们包括:
- alpha:希腊数字
- alphanum:字母和数字
- email:电子邮件地址
- url:网址
这四种是extjs内置的,已经提供给我们可以直接来用的。我们拿email来进行示例。
效果:
代码:
{ xtype: "textfield", name: "Email", fieldLabel: "Email", vtype: "email", flex: 1 }
vtype也可以自定义
上面介绍了vtype的简单用法,可以看到这种验证是非常好用的,但是小伙伴们不觉得extjs提供的vtype太少吗?
小伙伴们不要嫌弃,接下来我们看一下如何自定义vtype,代码:
//验证ip地址 Ext.apply(Ext.form.field.VTypes, { IPAddress: function (v) { return /^\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}$/.test(v); }, IPAddressText: ‘只能输入ip地址‘, IPAddressMask: /[\d\.]/i });
用法:
{ xtype: "textfield", name: "ip", fieldLabel: "IP地址", vtype: "IPAddress" }
效果:
欢迎小伙伴们加入我们的“ExtJS 互助团”QQ群:2257136296
这篇文章还发布在了我的个人网站上面,链接地址:http://www.qeefee.com/article/extjs-starter-03-form-validation
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。