对ExtJS基础稍微有所了解的人都知道,表单验证肯定需要到FormPanel了,那么FormPanel首先他是继承自Ext.Panel的,其他的如TreePanel,GridPanel,TabPanel等也是继承自Ext.Panel的,今天要说的是表单验证,为什么要用ExtJs的表单验证呢,自己手写JS代码也可以完成啊,因为Ext早就帮我们做好了,我只是拿过来用就可以了,写JS得多少行代码啊
闲话少说,在验证之前,我不得不提两个小知识点:
第一点:
//大家在很多的extjs代码中都看到了这两个,他们都起提示作用的
Ext.QuickTips.init();//支持tips提示
Ext.form.Field.prototype.msgTarget='side';//提示的方式,枚举值为"qtip","title","under","side",id(元素id)
//side方式用的较多,右边出现红色感叹号,鼠标上去出现错误提示
//大家可以分别去掉这两行代码,看效果就会明白他们的作用,(放在onReady的function(){}中)
第二点:
//空验证的两个参数
1.allowBlank:false//false则不能为空,默认为true
2.blankText:string//当为空时的错误提示信息
具体代码如下
var form1 = new Ext.form.FormPanel({
width:350,
frame:true,
renderTo:"form1",
labelWidth:80,
title:"FormPanel",
bodyStyle:"padding:5px 5px 0",
defaults:{width:150,xtype:"textfield"}, //先用Ext.apply方法添加自定义的password验证函数(也可以取其他的名字)
//配置items参数
items:[
{
xtype:"textfield",
allowBlank:false,
fieldLabel:"邮箱",
vtype:"email",//email格式验证
blankText:"不能为空,请填写",
vtypeText:"不是有效的邮箱地址",//错误提示信息,默认值我就不说了
id:"blanktest",
anchor:"90%"
},
{ fieldLabel:"密码",
inputType:"password",
id:"pass1",
allowBlank:false,
blankText:'请输入密码',
anchor:"90%"
},
{
fieldLabel:"确认密码",
inputType:"password",
id:"pass2",
vtype:"password",//自定义的验证类型
vtypeText:"两次密码不一致!",
confirmTo:"pass1",//要比较的另外一个的组件的id
anchor:"90%"
}
],
buttons:[{text:'提交'},{text:'取消'}]
});
Ext.apply(Ext.form.VTypes,{
password:function(val,field){//val指这里的文本框值,field指这个文本框组件,大家要明白这个意思
if(field.confirmTo){//confirmTo是我们自定义的配置参数,一般用来保存另外的组件的id值
var pwd=Ext.get(field.confirmTo);//取得confirmTo的那个id的值
return (val==pwd.getValue());
}
return true;
}
});
分享到:
相关推荐
### Extjs 表单验证详解 #### 一、引言 在现代Web开发中,确保用户输入的有效性和安全性至关重要。Extjs作为一种强大的JavaScript框架,提供了丰富的功能来帮助开发者轻松实现客户端验证。本文将深入探讨Extjs中的...
表单验证是确保用户输入符合预设规则的关键部分。ExtJS提供内置的验证功能,可以在字段级别或表单级别设置验证规则。 在这个案例中,`importFormPanel.js`可能是实现这些功能的脚本文件。它可能包含了创建表单、...
ExtJS的表单组件包括文本框、密码框、下拉列表、复选框、单选按钮等,支持复杂的表单验证,可以轻松实现前端的数据验证。 **Servlet简介** Servlet是Java中用于处理HTTP请求的服务端组件,常用于Web应用开发。它...
在EXTJS中,表单验证是确保用户输入数据符合预设规则的重要环节。EXTJS提供了一种强大的方式来实现客户端验证,这可以帮助开发者在用户提交数据前检查输入的有效性,从而减少服务器端的压力并提高用户体验。本文将...
extjs验证 extjs验证 extjs验证 extjs验证extjs验证 extjs验证 extjs验证 extjs验证
随着项目复杂度的增加,可能还需要考虑其他一些高级功能,例如数据验证、动态添加/删除表单字段等。ExtJs框架提供了丰富的API来支持这些功能,例如可以使用`isValid()`方法检查表单是否有效,或者使用`add()`和`...
本教程将深入探讨Jquery、YUI和ExtJs这三大JavaScript框架在表单验证和提示功能方面的应用。 **jQuery** jQuery是一款轻量级、高性能的JavaScript库,以其简洁的API和跨浏览器兼容性闻名。在表单验证方面,jQuery...
总结来说,ExtJS表单验证提供了丰富的选项,从基础的空验证和简单的vtype验证,到自定义函数验证和正则表达式验证,几乎可以覆盖所有常见的验证需求。通过这些验证方式,开发者可以确保用户输入的数据既安全又符合...
在“ExtJs4.0 表单提交Demo”中,我们将深入探讨如何在ExtJs 4.0环境下,通过Ext Ajax模块实现表单的数据提交,同时实现显示层和控制层的分离,提升代码的可维护性和可扩展性。 1. **ExtJs 4.0 表单基础** ExtJs ...
在ExtJS中,提交表单是一项常见的操作,用于将用户在表单中填写的数据发送到服务器进行处理。本文将详细讲解如何在ExtJS环境中实现表单的提交,并结合Java Web后端进行交互。 首先,我们需要了解ExtJS中的表单组件...
3. **表单验证与提交**:在`subjectForm`函数中,使用`myform.getForm().isValid()`检查表单是否有效,如果有效,则通过`form.submit()`方法提交表单数据,设置等待消息、超时时间、成功和失败回调。成功回调会根据...
ExtJS 动态表单是基于Sencha ExtJS框架实现的一种灵活、可扩展的表单设计方式,它允许开发者在运行时动态地创建、修改或加载表单组件,以适应不同场景下的数据输入需求。在Web应用开发中,动态表单通常用于处理不...
此外,表单还有验证功能,可以对用户输入的数据进行实时检查,确保其符合预设的规则。 Grid组件是ExtJS中的另一个核心组件,它用于展示大量的结构化数据。Grid可以包含多个列,每列都有自定义的头部和数据渲染器。...
ExtJS为表单验证提供了强大支持。表单面板组件可以定义默认验证规则,也可以对单个字段单独设置验证。验证规则通常通过验证器(validator)来实现,可以是自定义的验证函数,也可以是预定义的验证规则。数据绑定则是...
保存提交代码,extjs4.0 // 重置 和 保存 按钮. buttons: [{ text: '重置', handler: function() { this.up('form').getForm().reset(); } }, { text: '保存', /*formBind: true, //only enabled once the ...
表单验证是FormPanel 的一个重要特性。开发者可以通过设置`fieldValidators`或`validationEvent`属性来实现。当用户尝试提交表单时,ExtJS会自动检查所有字段的值是否满足验证规则。例如,我们可以通过以下方式验证...
参考以前资源,用extJS4.2.1版本做的一个demo示例,希望对大家有用。
ExtJS的表单使用FormPanel容器 表单使用的布局方式:form和formtable布局 ExtJS的表单和html的form标签是相似的,新建一个FormPanel实际上就是新建一个html的form标签,只是添加许多Ext的样式而已
主要用例子说明extjs4的form表单的运用,其中有表单属性说明,表单控件运用说明如: title:'表单', //表单标题 bodyStyle:'padding:5 5 5 5', //表单边距 height:120, //表单高度 width:200, //表单宽度 ...
Extjs对分页、表单验证、表单组件的布局与初始化都提供了详细的指导,使得表单元素的开发更加高效。 表格组件GridPanel是Extjs中的亮点之一,它不仅可以展示大量数据,还支持复杂的列模型和行操作。此外,GridPanel...