extjs表单
Ext.onReady(function(){
Ext.BLANK_IMAGE_URL = '../ext/resources/images/default/s.gif';
Ext.QuickTips.init();//显示错误提示字符做准备
//准备下拉框的数据
var mydata = new Ext.data.SimpleStore({
fields:['id','myda'], //指定数组中数据格式
data:[['1','语文'],['2','数学'],['3','物理']]
});
var mydata2 = new Ext.data.SimpleStore({
fields:['id','myda'],
data:[
['0','zhangsan'],
['1','lisi'],
['2','wangwu'],
['3','zhaoliu']
]
});
var myForm = new Ext.form.FormPanel({
url:'1.html', //表单提交地址
renderTo:Ext.get("id1"), //显示位置
//renderTo:document.body,
frame:true, //自定义边框
title:"表单",
width:300,
items:[
{
xtype:'textfield',
fieldLabel:'用户名',
width:150,
allowBlank:false,//非空校验
name:'username',
//添加事件
listeners:{
specialkey:function(f,e){
if(e.getKey() == e.ENTER) {
Ext.Msg.alert("提交","太极");
myForm.getForm().submit();
}
}
}
},
{
xtype:'textfield',
fieldLabel:'邮箱',
width:150,
vtype:'email',//vtype是提供的内部校验
name:'email'
},
{
xtype:'datefield',
fieldLabel:'日期',
width:150,
disabledDays:[1,2,3,4,5],//禁止输入星期一到星期五,0代表星期天
name:'bay'
},
{
xtype:'textfield',
fieldLabel:'测试一',
width:150,
vtype:'name',
name:'text1'
},
//单选框
{
xtype:'radio',
fieldLabel:'性别',
name:'sex',
boxLabel:'男'
},
{
xtype:'radio',
hideLabel:false,
name:'sex',
boxLabel:'女',
labelSeparator:''
},
//复选框
{
xtype:'checkbox',
fieldLabel:'爱好',
name:'hate',
boxLabel:'唱歌'
},
{
xtype:'checkbox',
hideLabel:false,
name:'hate',
boxLabel:'跳舞',
labelSeparator:''
},
{
xtype:'checkbox',
hideLabel:false, //只显示在右侧
name:'hate',
boxLabel:'爬山',
labelSeparator:''
},
//下拉框
{
xtype:'combo',
name:'class',
fieldLabel:'科目',
mode:'local', //数据来自本地还是远程
store:mydata,//数据来源
displayField:'myda',//显示内容
width:150
},
//文本框
{
xtype:'textarea',
name:'des',
hideLabel:true, //左右都显示
labelSeparator:'',
height:100,
anchor:'100%' //全屏显示
},
//编辑框
{
xtype:'htmleditor',
name:'des',
hideLabel:true,
labelSeparator:'',
height:100,
anchor:'100%'
},
{
xtype:'combo',
name:'name',
fieldLabel:'姓名',
mode:'local',
store:mydata2,
displayField:'myda',
width:130,
listeners:{
select:function(f,r,i) {
//选中id==1时
if(i == 1 ){
Ext.Msg.prompt('提示','姓名',Ext.emptyFn());
}
},
expand:function(f,r,i) {
Ext.Msg.alert('提示','你展开了下拉框');
}
}
}
],
//提交表单
buttons:[
{
text:'提交',
handler:function(){
myForm.getForm().submit({
success:function(f,a){//f为表单对象,a为action对象
Ext.Msg.alert('提示','提交成功');
},
failure:function(f,a) {
//Ext.Msg.alert('提示','提交失败');
if(a.failureType == Ext.form.Action.CONNECT_FAILURE){
Ext.Msg.alert('提示','a=' + a.response.status +'a='+a.response.statusText);
}
if(a.failureType == Ext.form.Action.SERVER_INVALID) {
Ext.Msg.alert('提示',a.result.errormsg);
}
}
});
}
},
{
text:'重置',
handler:function(){
myForm.getForm().reset();
}
}
]
});
//自定义校验,/^[A-Z][A-Za-z\-]+[A-Z][A-Za-z\-]+$/
Ext.form.VTypes['nameVal'] = /^[A-Z][A-Za-z\-]+[A-Z][A-Za-z\-]+$/; //校验所需要的正则表达式
Ext.form.VTypes['nameMask'] = /^[A-Z][A-Za-z\-]$/; //掩码,首字母没大写就显示错误
Ext.form.VTypes['nameText'] = 'In‐valid Director Name.'; //错误提示内容
Ext.form.VTypes['name'] = function(v){
return Ext.form.VTypes['nameVal'].test(v);
}
});
extjs表单的更多相关文章
- Extjs表单控件入门
ExtJs表单控件用formPanel来做为表单元素的容器.默认情况下,是使用Ajax异步提交. 大家知道要使用Extjs必须引入他的库,所以我们要引入以下几个文件: ext-all.css ext- ...
- extjs表单验证
extjs表单验证 //放在onReady的function(){}中 Ext.QuickTips.init(); //为组件提供提示信息功能,form的主要提示信息就是客户端验证的错误信息. Ext ...
- ExtJS 表单 submit时错误处理
这里不提success,提提Extjs 表单提交的failure方法. 在表单的提交中,当发生异常行为时通常分为三种情况 1. 无法连接到服务器 2. 表单验证错误 3. 业务逻辑错误 对应下面的代码 ...
- EXTJS 表单提交
EXTJS框架中,在提交表单时,可有3种方式: 方法一: 普通的 Form 提交方式, 主要使用 form.submit() 方法来将表单提交到后台,在后台是根据表单的 name 属性来获取表单中元素 ...
- NSS_08 extjs表单验证
Extjs做了非常好的表单验证功能, 使用起来非常方便. 系统内置了4种验证功能,分别是alpha, alphanumeric,url, email, 在程序中可以直接使用,(可以结合allowBla ...
- Extjs 表单提交送给新手
Extjs的三种提交方式: 表单Ajax提交,普通提交,单独Ajax提交: 1.表单ajax提交(默认提交方式) 提交函数:当按下表单中的提交按钮时执行下面的btn函数,按照表单的name进行提交.提 ...
- Extjs 表单验证后,几种错误信息展示方式
今天要求对form表单验证,进行系统学习一下,故做了几个示例: Ext.onReady(function(){ var panel=Ext.create('Ext.form.Panel' ...
- Extjs表单验证小结
//放在onReady的function(){}中 Ext.QuickTips.init(); //为组件提供提示信息功能,form的主要提示信息就是客户端验证的错误信息. Ext.form.Fiel ...
- 关于extjs表单布局的几种方式
一.用column布局 layout:'column', defaults:{ style:'float:left;margin:4px;', columnWidth: 0.49, msgTarget ...
随机推荐
- NSStringDrawingOptions
如果options参数为NSStringDrawingUsesLineFragmentOrigin,那么整个文本将以每行组成的矩形为单位计算整个文本的尺寸.(在这里有点奇怪,因为字体高度大概是13.8 ...
- css sprites 图片精灵自动生成 插件
grunt-spritesmith https://www.npmjs.com/package/grunt-spritesmith
- [ACM] hdu 1251 统计难题 (字典树)
统计难题 Problem Description Ignatius近期遇到一个难题,老师交给他非常多单词(仅仅有小写字母组成,不会有反复的单词出现),如今老师要他统计出以某个字符串为前缀的单词数量(单 ...
- android的JNI标准 android的NDK
转载的! Java Native Interface (JNI)标准是java平台的一部分,它允许Java代码和其他语言写的代码进行交互.JNI 是本地编程接口,它使得在 Java 虚拟机 (VM) ...
- No http handler was found for request type 'GET'
asp.net 运用统计图表的时候,在本地运行,没有问题,发布到服务器上的IIS后,就报这个错误,具体错误 看图 这个图片真恶心,网上找了下,资料不多,但是还是有个能真正解决问题的, 解决方法是,在w ...
- Java引用详解
区分几个概念 ,类 .对象 .对象的引用 A a1 = new A(); A a2 = a1; a1-------------------->对象内存<---------------- ...
- 解决swfupload上传控件文件名中文乱码问题 三种方法 flash及最新版本11.8.800.168
目前比较流行的是使用SWFUpload控件,这个控件的详细介绍可以参见官网http://demo.swfupload.org/v220/index.htm 在使用这个控件批量上传文件时发现中文文件名都 ...
- Android Content Provider的启动过程源码分析
本文參考Android应用程序组件Content Provider的启动过程源码分析http://blog.csdn.net/luoshengyang/article/details/6963418和 ...
- 用jQuery实现鼠标在table上移动进行样式变化
1.定义样式 <style type="text/css"> .striped { background-color:red; ...
- EDStarRating(IOS星级评定)
链接地址:https://github.com/erndev/EDStarRating EDStarRating