时间: 2020-09-5|27次围观|0 条评论

接上篇内容,我们在学会extjs form的基本用法之后,今天我们来看看extjs form的validation功能。

必填项,就是不能为空(allowBlank)

效果:

image

代码:

{    xtype: "textfield",    name: "UserName",    fieldLabel: "用户名",    allowBlank: false,    flex: 1}

输入长度限制,maxLength/minLength

效果:

image

&

image

代码:

{    xtype: "textfield",    name: "UserName",    fieldLabel: "用户名",    allowBlank: false,    maxLength: 10,    minLength: 3,    flex: 1}

值大小限制,maxValue/minValue

值大小的限制常用于numberfield、datefield,可以指定一个可用值的范围。

效果:

image

&

image

代码:

{    xtype: "numberfield",    name: "Age",    fieldLabel: "年龄",    maxValue: 60,    minValue: 18,    flex: 1}

vtype验证

vtype提供了一些公用的验证类型,它们包括:

  • alpha:希腊数字
  • alphanum:字母和数字
  • email:电子邮件地址
  • url:网址

这四种是extjs内置的,已经提供给我们可以直接来用的。我们拿email来进行示例。

效果:

image

代码:

{    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"}

效果:

image

 

文章转载于:https://www.cnblogs.com/youring2/p/extjs-starter-03-form-validation.html

原著是一个有趣的人,若有侵权,请通知删除

本博客所有文章如无特别注明均为原创。
复制或转载请以超链接形式注明转自起风了,原文地址《开放、平等、协作、快速、分享
   

还没有人抢沙发呢~