Extjs 表单验证后,几种错误信息展示方式
今天要求对form表单验证,进行系统学习一下,故做了几个示例:
Ext.onReady(function(){
var panel=Ext.create('Ext.form.Panel', {
title:"test the valition"
,width:650
,layout:"anchor"
,renderTo:Ext.getBody()
,defaults:{
margin:"5 0 8 10"
,labelWidth:150
,width:500
}
, defaultType: "textfield"
,items:[
{xtype:"container"
,html:"1.进行远程数据验证,验证不立即执行,而是当鼠标失去焦点才进行验证!"
}
,{
fieldLabel:"remote validation"
,itemId:"show"
, xtype:'textfield'
,labelAlign:"left"
,msgTarget: 'side'
,validateOnChange:false //设置该属性为false,不立即进行验证,而是当鼠标焦点离开进行验证
,plugins:[{ptype:"uxvalidation"}] //自定义远程验证插件,里面调用ajax方式进行后台验证,其实也可以使用validator实现相同的效果。
,remoteValidator: {
params:{
LoginName:"#show" //(通过itemId寻找对应控件)
}
,url:"test.ashx"
}
,listeners:{
errorchange:function(lbl,error){
var me=lbl;
}
}
}
,{ xtype:"container"
,html:"2.进行本地验证(提示类型为under),错误信息将会在下面显示出来"
}
,{
fieldLabel:"local validation (number)"
,itemId:"showTwo"
,xtype:"textfield"
,labelAlign:"left"
,msgTarget:"under"
,minLength:5
,vtype:"number"
}
,{ xtype:"container"
,html:"3.本地和远程验证,只有当本地验证通过,才会调用后台验证"
}
,{
fieldLabel:"local and remote validation" //本地和后台都进行验证,只有当本地验证通过,才会调用后台验证
,itemId:"showThree"
,xtype:"textfield"
,labelAlign:"left"
,msgTarget:"side"
,vtype:"number"
,minLength:5
,plugins:[{ptype:"uxvalidation"}]
,remoteValidator: {
params:{
LoginName:"#showThree" //(通过itemId寻找对应控件)
}
,url:"test.ashx"
}
}
,{ xtype:"container"
,html:"4.不立即进行验证,当鼠标失去焦点才进行验证,错误信息将以title形式提醒"
}
,{
fieldLabel:"Email(title)"
,itemId:"showFour"
,xtype:"textfield"
,labelAlign:"left"
,msgTarget:"title"
,vtype:"email"
,validateOnChange:false //通过设置该属性为false ,不立即进行验证,而是当鼠标离开的时候才进行验证
}
,{ xtype:"container"
,html:"5.直接使用正则进行验证,regex(而不是vtype)验证"
}
,{
fieldLabel:"regex validation (email)"
,itemId:"showFive"
,id:"five"
,xtype:"textfield"
,labelAlign:"left"
,msgTarget:"side"
,regex:/([a-z0-9]*[-_\.]?[a-z0-9]+)*@([a-z0-9]*[-_]?[a-z0-9]+)+[\.][a-z]{2,3}([\.][a-z]{2})?/i //直接正则验证
,regexText:"邮件格式不正确!"
}
,{ xtype:"container"
,html:"6.直接使用函数验证,validator(而不是vtype)验证"
}
,{
fieldLabel:"validator function (number)"
,itemId:"showSix"
,xtype:"textfield"
,labelAlign:"left"
,maskTarget:"none"
,vtype:"number"
,minLength:6
,validator:function(value){ //直接进行函数验证 ,也可以在里面进行远程验证
if(value==3)
return "请不要输入该数字!";
else
return true;
}
}
,{ xtype:"container"
,html:"7.直接显示错误文本信息,通过配置msgTarget为id"
}
,{
xtype:"container"
,layout:"column"
,width:640
,items:[
{
fieldLabel:"the first input"
,itemId:"first"
,xtype:"textfield"
,labelAlign:"left"
,minLength:5
,msgTarget:"showText" //通过配置id属性,改变错误信息显示的位置,直接展示文本信息
,errorMsgCls:"show"
,labelWidth:150
,width:500
,margin:"0 2 2 0"
}
,{
xtype:"container" //等待显示错误文本信息的容器
,id:"showText"
,html:"test test"
,width:130
}
]
}
,{ xtype:"container"
,html:"8.验证和目标控件值是否一致,通过配置target:'itemId'为目标控件"
}
,{
fieldLabel:"the second input"
,itemId:"second"
,xtype:"textfield"
,labelAlign:"left"
,msgTarget:"side"
,target:"first" //通过赋值target属性(其值为要匹配项的itemId)匹配对应的控件,进行相同值比较
,vtype:"twiceInput"
}
]
});
});
Extjs 表单验证后,几种错误信息展示方式的更多相关文章
- extjs表单验证
extjs表单验证 //放在onReady的function(){}中 Ext.QuickTips.init(); //为组件提供提示信息功能,form的主要提示信息就是客户端验证的错误信息. Ext ...
- asp.net 登陆验证 Form表单验证的3种方式 FormsAuthentication.SetAuthCookie;FormsAuthentication.RedirectFromLoginPage;FormsAuthenticationTicket
我们在登陆成功后,使用下面的3种方法,都是同一个目的:创建身份验证票并将其附加到 Cookie, 当我们用Forms认证方式的时候,可以使用HttpContext.Current.User.Ident ...
- NSS_08 extjs表单验证
Extjs做了非常好的表单验证功能, 使用起来非常方便. 系统内置了4种验证功能,分别是alpha, alphanumeric,url, email, 在程序中可以直接使用,(可以结合allowBla ...
- JQuery插件使用之Validation 快速完成表单验证的几种方式
JQuery的Validation插件可以到http://plugins.jquery.com/上去下载.今天来分享一下,关于这个插件的使用. 简易使用 这第一种方式可谓是傻瓜式的使用,我们只需要按照 ...
- ace+validate表单验证(两种方法)
//修改密码(直接在validate中验证提交) $("#changePassword").on(ace.click_event, function() { var html = ...
- bootstrap-table之通用方法( 时间控件,导出,动态下拉框, 表单验证 ,选中与获取信息)
1.bootstrap-table 单击单行选中 $('#gzrwTable').on('click-row.bs.table', function(e, row, $element) { $('.s ...
- jQuery表单验证的几种方法
1.jQuery的框架的验证:validate框架 Jquery Validate 验证规则 (1)required:true 必输字段(2)remote:”check.PHP” 使用ajax方法调用 ...
- Extjs表单验证小结
//放在onReady的function(){}中 Ext.QuickTips.init(); //为组件提供提示信息功能,form的主要提示信息就是客户端验证的错误信息. Ext.form.Fiel ...
- 关于extjs表单布局的几种方式
一.用column布局 layout:'column', defaults:{ style:'float:left;margin:4px;', columnWidth: 0.49, msgTarget ...
随机推荐
- java 枚举
DK1.5引入了新的类型——枚举.在 Java 中它虽然算个“小”功能,却给我的开发带来了“大”方便. 用法一:常量 在JDK1.5 之前,我们定义常量都是: publicstaticfianl... ...
- WAP端 经验记录2
1. LightboxV2 插件 点击A 应该关闭弹层的效果,但是 SAMSUNG 手机上原生浏览器上,看上去不会关闭却跳转了,但当点击回退按钮的时候就会看见弹层已经消失(其实之前的关闭效果已经记录了 ...
- MediaBrowserService 音乐播放项目
MediaBrowserService 音乐播放项目,本项目主要有如下功能: (1):支持播放在线音乐 (2):按住home键退出页面后显示通知栏部分播放提示, (3) : 支持切换上下首歌曲 本项 ...
- DragSelectRecyclerView 长按滑动多选图像android特效
高仿Google相册多选效果,长按某一item后然后滑动选择到任意item,效果很不错,适合相册页面多选部分效果. 本例子主要是自定义DragSelectRecyclerView通过如下展示gridv ...
- WPF的"路径标记语法"
在此之前我们先了解一下WPF的"路径标记语法" M:表示绘制起点 // M 0,0 L:表示绘制直线 (H:横线 V:竖线) // L 100,0 C:三次方贝塞尔曲线 // ...
- oricle数据库关于定时
- jquery EasyUI datagrid 的扩展
接触 easyui 半年,js学的不深.大神请路过. 直接扩展 添加方法: $.extend($.fn.datagrid.methods, { getSelectedIndex: function ( ...
- C# 以管理员身份运行WinForm程序
最近帮客户开发的WinForm客户端,部分在使用的过程中,会出现“系统文件找不到”的错误提示. 调试后,确定为程序在操作配置文件时,系统权限引起的错误,直接管理员权限运行就正常了. 考虑用户操作的便利 ...
- linux内核升级图文攻略(转)
一.Linux内核概览Linux是一个一体化内核(monolithic kernel)系统.设备驱动程序可以完全访问硬件.Linux内的设备驱动程序可以方便地以模块化(modularize)的形式设置 ...
- Visio 2007中进行数据库建模时如何显示字段类型以及概念名称
关于在VISIO中进行数据库建模时如何显示字段类型,以及注释的 1 如何显示字段类型: 在visio菜单上--->点击数据库--->选项--->文档 打开后选择表这项,在上 ...