作者:
来源:
声明:本博客原创文字只代表本人工作中在某一时间内总结的观点或结论,与本人所在单位没有直接利益关系。非商业,未授权,贴子请以现状保留,转载时必须保留此段声明,且在文章页面明显位置给出原文连接。
转载:http://www.cnblogs.com/youring2/p/extjs-starter-03-form-validation.html
本文共 1390 字,大约阅读时间需要 4 分钟。
接上篇内容,我们在学会之后,今天我们来看看extjs form的validation功能。
效果:
代码:
{ xtype: "textfield", name: "UserName", fieldLabel: "用户名", allowBlank: false, flex: 1}
效果:
&
代码:
{ xtype: "textfield", name: "UserName", fieldLabel: "用户名", allowBlank: false, maxLength: 10, minLength: 3, flex: 1}
值大小的限制常用于numberfield、datefield,可以指定一个可用值的范围。
效果:
&
代码:
{ xtype: "numberfield", name: "Age", fieldLabel: "年龄", maxValue: 60, minValue: 18, flex: 1}
vtype提供了一些公用的验证类型,它们包括:
这四种是extjs内置的,已经提供给我们可以直接来用的。我们拿email来进行示例。
效果:
代码:
{ xtype: "textfield", name: "Email", fieldLabel: "Email", vtype: "email", flex: 1}
上面介绍了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"}
效果:
这篇文章还发布在了我的个人网站上面,链接地址:
如果认为此文对您有帮助,别忘了支持一下哦!