ExtJS4.2学习(17)表单基本输入控件Ext.form.Field

简介:

QQ截图20131211232738.jpg

Ext.form.Field是所有表单输入控件的基类,其他的输入控件都是基于Ext.form.Field扩展得来的。 Ext.form.Field中定义了输入控件通用的属性和功能函数,这些通用的属性和功能函数大致分为3大类:页面显示样式、控件参数配置和数据有效性检验。我们先来看看表单输入控件可以使用的校验显示方式。默认情况下,这些输入控件会监听blur事件,如果数据校验失败,就会根据msgTarget中的设置显示错误信息。通常,msgTarget会被设置为qtip,即使用QuickTip显示错误信息,也可以将msgTarget设置为title、side、under中的一种,这样错误信息就会以指定的方式显示。因为所有的输入控件都继承自 Ext.form.Field,所以我们可以为任何一个表单输入控件进行这些设置,改变它们的错误信息显示方式。具体代码如下:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
< html >
< head >
< meta  http-equiv = "Content-Type"  content = "text/html; charset=UTF-8" >
< title >Hello Extjs4.2</ title >
< link  href = "../../ExtJS4.2/resources/ext-theme-neptune/ext-theme-neptune-all.css"  rel = "stylesheet" >
< script  src = "../../ExtJS4.2/ext-all.js" ></ script >
< script  src = "../../ExtJS4.2/locale/ext-lang-zh_CN.js" ></ script >
< script  type = "text/javascript" >
Ext.onReady(function(){
                                                        
     // HtmlEditor需要这个
     Ext.tip.QuickTipManager.init();
                                                        
     var field1 = new Ext.form.TextField({
         fieldLabel: 'qtip错误显示方式',
         msgTarget: 'qtip',
         allowBlank: false
     });
     var field2 = new Ext.form.TextField({
         fieldLabel: 'title错误显示方式',
         msgTarget: 'title',
         allowBlank: false
     });
     var field3 = new Ext.form.TextField({
         fieldLabel: 'side错误显示方式',
         msgTarget: 'side',
         allowBlank: false
     });
     var field4 = new Ext.form.TextField({
         fieldLabel: 'under错误显示方式',
         msgTarget: 'under',
         allowBlank: false
     });
                                                        
     var form = new Ext.form.FormPanel({
         title: '表单输入控件演示',
         frame: true,
         fieldDefaults:{
             labelAlign:'right', //文本对齐方式
             labelWidth:150
         },
         items: [field1, field2, field3, field4],
         renderTo: 'form'
     });
                                                        
                                                        
     form.getForm().isValid();
});
</ script >
</ head >
< body >
< h1 >我的ExtJS4.2学习之路</ h1 >
< hr  />
作者:束洋洋
开始日期:2013年12月11日21:01:19
< h2 >深入浅出ExtJS之表单基本输入控件Ext.form.Field</ h2 >
< div  id = "form" ></ div >
</ body >
</ html >

qtip方式:默认显示方式,显示为悬浮框提示错误文字;

title方式:类似HTML超链接中设置的title;

side方式:输入框后出现错误图标,鼠标放上去会显示错误信息;

under方式:文本框下方出现错误提示图标和文字.

接下来会对上节中出现的控件一一作介绍,本篇先说说文本输入控件(Ext.form.TextField)、多行文本输入控件(Ext.form.TextArea)和日期输入控件(Ext.form.DateField)

QQ截图20131211232738.jpg

代码如下,相关属性已经在注释中写明。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
< html >
< head >
< meta  http-equiv = "Content-Type"  content = "text/html; charset=UTF-8" >
< title >Hello Extjs4.2</ title >
< link  href = "../../ExtJS4.2/resources/ext-theme-neptune/ext-theme-neptune-all.css"  rel = "stylesheet" >
< script  src = "../../ExtJS4.2/ext-all.js" ></ script >
< script  src = "../../ExtJS4.2/locale/ext-lang-zh_CN.js" ></ script >
< script  type = "text/javascript" >
Ext.onReady(function(){
              
     var field = new Ext.form.TextField({
         fieldLabel: 'empty', //输入控件前显示名称
         allowBlank: false, //是否允许为空
         emptyText:'空', //没有输入任何内容提示文字
         maxLength:50, //输入最大字符串长度
         minLength:10 //输入最小字符串长度
     });
                  
     var fieldTextArea = new Ext.form.TextArea({
         width:200,
         grow:true, //会根据输入内容自动修改自身高度
         preventScrollbars:true, //防止出现滚动条,如果内容超出显示范围就会自动隐藏
         fieldLabel:'empty',
         allowBlank:false,
         emptyText:'空',
         maxLength:50,
         minLength:10
     });
                  
     var fieldDate = new Ext.form.DateField({
         fieldLabel:'日期',
         emptyText:'请选择',
         format:'Y-m-d',
         disabledDays:[0,6] //禁止选择的日期
     }); 
              
     var form = new Ext.form.FormPanel({
         title: '表单输入控件演示',
         width:500,
         frame: true,
         items: [field,fieldTextArea,fieldDate],
         renderTo: 'form'
     });
});
</ script >
</ head >
< body >
< h1 >我的ExtJS4.2学习之路</ h1 >
< hr  />
作者:束洋洋
开始日期:2013年12月11日21:13:50
< h2 >深入浅出ExtJS之文本输入控件Ext.form.TextField</ h2 >
< div  id = "form" ></ div >
</ body >
</ html >



本文转自shyy8712872 51CTO博客,原文链接:http://blog.51cto.com/shuyangyang/1404502,如需转载请自行联系原作者

相关文章
|
JavaScript 前端开发
Element-ui 中表单(Form)验证数字值范围(大小)
Element-ui 中表单(Form)验证数字值范围(大小)
2278 0
Element-ui 中表单(Form)验证数字值范围(大小)
|
移动开发 安全 数据可视化
HTML的笔记及展示(2)(表单元素、input元素、label、button以及HTML5新增的一些元素)
HTML的笔记及展示(2)(表单元素、input元素、label、button以及HTML5新增的一些元素)
222 0
HTML的笔记及展示(2)(表单元素、input元素、label、button以及HTML5新增的一些元素)
|
JavaScript
Extjs Form 表单修改
Extjs修改分两种方法:1.前台直接加载;2.通过后台远程加载 1.直接加载:方法 form.getForm().loadRecord(); 应用时要求页面上已经存在页面中的所有数据,比如选中gridPanel一行,然后直接传递此行记录,到formPanel页面,可直接加载 2.后台加载:方法 form.getForm().load(); 应用时 传递一个参数到后台,然后远程取值,绑定。
1027 0
|
数据安全/隐私保护 容器
HTML—— 表单标签(input,lable,textarea等)以及相亲网注册界面实现
HTML—— 表单标签(input,lable,textarea等)以及相亲网注册界面实现
263 0
HTML—— 表单标签(input,lable,textarea等)以及相亲网注册界面实现
|
前端开发 Java
Struts2的%,#,$的区别,UI标签及其表单radio,checkbox,select回显数据(七)中
Struts2的%,#,$的区别,UI标签及其表单radio,checkbox,select回显数据(七)
168 0
Struts2的%,#,$的区别,UI标签及其表单radio,checkbox,select回显数据(七)中
|
前端开发 JavaScript Java
Struts2的%,#,$的区别,UI标签及其表单radio,checkbox,select回显数据(七)上
Struts2的%,#,$的区别,UI标签及其表单radio,checkbox,select回显数据(七)
173 0
Struts2的%,#,$的区别,UI标签及其表单radio,checkbox,select回显数据(七)上
|
前端开发 Java
Struts2的%,#,$的区别,UI标签及其表单radio,checkbox,select回显数据(七)下
Struts2的%,#,$的区别,UI标签及其表单radio,checkbox,select回显数据(七)
204 0
Struts2的%,#,$的区别,UI标签及其表单radio,checkbox,select回显数据(七)下
|
前端开发
Bootstrap系列 -- 14. 表单控件输入框input
     每一个表单都是由表单控件组成。离开了控件,表单就失去了意义。接下来的我们简单的来了解Bootstrap框架中表单控件的相关知识。   单行输入框,常见的文本输入框,也就是input的type属性值为text。
1080 0