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



QQ截图20131211232738.jpg6pC思考者日记网-束洋洋个人博客

Ext.form.Field是所有表单输入控件的基类,其他的输入控件都是基于Ext.form.Field扩展得来的。 Ext.form.Field中定义了输入控件通用的属性和功能函数,这些通用的属性和功能函数大致分为3大类:页面显示样式、控件参数配置和数据有效性检验。6pC思考者日记网-束洋洋个人博客

我们先来看看表单输入控件可以使用的校验显示方式。默认情况下,这些输入控件会监听blur事件,如果数据校验失败,就会根据msgTarget中的设置显示错误信息。通常,msgTarget会被设置为qtip,即使用QuickTip显示错误信息,也可以将msgTarget设置为title、side、under中的一种,这样错误信息就会以指定的方式显示。因为所有的输入控件都继承自 Ext.form.Field,所以我们可以为任何一个表单输入控件进行这些设置,改变它们的错误信息显示方式。6pC思考者日记网-束洋洋个人博客

具体代码如下:6pC思考者日记网-束洋洋个人博客

<%@ 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>

 6pC思考者日记网-束洋洋个人博客

qtip方式:默认显示方式,显示为悬浮框提示错误文字;6pC思考者日记网-束洋洋个人博客

title方式:类似HTML超链接中设置的title6pC思考者日记网-束洋洋个人博客

side方式:输入框后出现错误图标,鼠标放上去会显示错误信息6pC思考者日记网-束洋洋个人博客

under方式:文本框下方出现错误提示图标和文字6pC思考者日记网-束洋洋个人博客

接下来会对上节中出现的控件一一作介绍,本篇先说说文本输入控件(Ext.form.TextField)、多行文本输入控件(Ext.form.TextArea)和日期输入控件(Ext.form.DateField)6pC思考者日记网-束洋洋个人博客

QQ截图20131211232738.jpg6pC思考者日记网-束洋洋个人博客

代码如下,相关属性已经在注释中写明。6pC思考者日记网-束洋洋个人博客

<%@ 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>  

 6pC思考者日记网-束洋洋个人博客

 6pC思考者日记网-束洋洋个人博客

 6pC思考者日记网-束洋洋个人博客

ExtJS4.2全部章节汇总目录


 6pC思考者日记网-束洋洋个人博客

ExtJS4.2学习(一)Ext自定义类6pC思考者日记网-束洋洋个人博客

ExtJS4.2学习(二)Ext统一组件模型6pC思考者日记网-束洋洋个人博客

ExtJS4.2学习(三)Grid表格6pC思考者日记网-束洋洋个人博客

ExtJS4.2学习(四)Grid表格中文排序问题6pC思考者日记网-束洋洋个人博客

ExtJS4.2学习(五)表格渲染与复选框6pC思考者日记网-束洋洋个人博客

ExtJS4.2学习(六)表格分页与通过后台脚本获得分页数据6pC思考者日记网-束洋洋个人博客

ExtJS4.2学习(七)EditorGrid可编辑表格6pC思考者日记网-束洋洋个人博客

ExtJS4.2学习(八)表格限制输入数据的类型6pC思考者日记网-束洋洋个人博客

ExtJS4.2学习(九)属性表格控件PropertyGrid6pC思考者日记网-束洋洋个人博客

ExtJS4.2学习(10)分组表格控件--GroupingGrid6pC思考者日记网-束洋洋个人博客

ExtJS4.2学习(11)可拖放的表格6pC思考者日记网-束洋洋个人博客

ExtJS4.2学习(12)基于表格的右键菜单6pC思考者日记网-束洋洋个人博客

ExtJS4.2学习(13)基于表格的扩展插件---rowEditing6pC思考者日记网-束洋洋个人博客

ExtJS4.2学习(14)基于表格的扩展插件(2)6pC思考者日记网-束洋洋个人博客

ExtJS4.2学习(15)树形表格6pC思考者日记网-束洋洋个人博客

 ExtJS4.2学习(16)制作表单6pC思考者日记网-束洋洋个人博客

ExtJS4.2学习(17)表单基本输入控件Ext.form.Field6pC思考者日记网-束洋洋个人博客

 ExtJS4.2学习(18)时间控件6pC思考者日记网-束洋洋个人博客

 ExtJS4.2学习(19)在线编辑器Ext.form.HtmlEditor6pC思考者日记网-束洋洋个人博客

ExtJS4.2学习(20)动态数据表格之前几章总结篇1 6pC思考者日记网-束洋洋个人博客

 ExtJS4.2学习(21)动态菜单与表格数据展示操作总结篇26pC思考者日记网-束洋洋个人博客

ExtJS4.2学习(22)登录界面6pC思考者日记网-束洋洋个人博客

ExtJS4.2学习(23)textFiled后追加按钮6pC思考者日记网-束洋洋个人博客

ExtJS4.2学习(24)TreeStore使用详解6pC思考者日记网-束洋洋个人博客

ExtJS4.2学习(25)终结篇,实战项目6pC思考者日记网-束洋洋个人博客

 

(转载本站文章请注明作者和出处 思考者日记网|束洋洋个人博客 ,请勿用于任何商业用途)

『访问 思考者日记网404页面 寻找遗失儿童』

告知
  •     本站90%以上文章均属原创,部分转载已加上原作者出处。 如需转载本站文章请您务必保留本站出处!
  •     打广告评论者请自重,请为广大网友提供一个健康干净的网络空间。
  • 感谢主机屋提供网站空间;
  • 感谢万网阿里云提供域名解析;
  • 感谢EmpireCMS提供CMS系统;
  • 感谢bootstrap展示本站前端页面;
  • 感谢Glyphicons Halflings提供字体;
  • 感谢大家一直以来对本站的喜爱,感谢大家!
近期文章 建议与反馈