- 浏览: 459212 次
- 性别:
- 来自: 陕西.西安
文章分类
最新评论
-
gaodadawei:
登录失败,请重试楼主,我目前遇到这样一个错误,claros i ...
James+Claros+intouch2.1配置 -
VerRan:
qq346448412 写道请问。你上一节、 用的ORACLE ...
James+Claros+intouch2.1配置 -
qq346448412:
请问。你上一节、 用的ORACLE数据库、 这一节又用的是MY ...
James+Claros+intouch2.1配置 -
paladin1988:
good,我喜欢..
Hibernate自关联关系 -
lygxy12:
请问,能给163发邮件吗?该怎么配置?我安装上面的操作,发给1 ...
James+Claros+intouch2.1配置
在项目中用户对于不符合业务规则,异常等情况的提示有一个要求: 尽量不使用alert 等弹出框作为提示,而是建议使用浮动框来作为替代。这个从用户体验来讲是一个非常好的建议,因为alert让人觉得很烦,一个一个的弹出让人觉得烦躁、恐惧。 项目中现在的浮动框是用div来实现的加入了比较温和的底色设置比较合适的大小,然后再使用时使用此div组件进行提示,设置div要显示的位置和显示的文字还有一个就是要设置多长时间消失,这个很好用也有很好的用户体验。Ext完全考虑到了这个并且非常优美的进行实现和应用,下面就对此进行学习。
Ext默认情况下对tips 浮动框是不显示的,需要增加初始化代码才可以。
1. 初始化tips
Ext.QuickTips.init();
2. 给组件增加tips信息和tips类型
var btn3 = new Ext.Button({ renderTo : Ext.getBody(), text : "Tips", width : "200", tooltip : "tipsTest!", tooltipType : "qtip", });
3. 测试效果
当鼠标放在button上时会提示 “tipsTest”
还有当打开tips 提示后 如果textField 组件设置了 allowBlank : false 则会提示此组件对应的值不能为空。
4. 增加更强大的校验
可以增加字符的长度校验,格式校验等,格式的校验主要通过正则表达式来实现,EXT对常用的规则进行了封装无需自行编写正则表达式,比如URL、email等
举例:
name : "password", fieldLabel : "密码", inputType : "password", allowBlank : false, xtype : "textfield", minLength:6, minLengthText:"密码长度不能小于6个字符", maxLength: 10, maxLengthText: "密码长度不能大于10个字符"
上面的代码已经说的很明白了,实现相当简单。
小结:
ext对校验的提示和校验的规则和方式做了很好的实现,更好的用户体验,更简单的编码方式。
实例:
列出一个包含常用组件和校验的代码:
Ext.onReady(function() { Ext.QuickTips.init() var f = new Ext.FormPanel({ url : 'MyServlet', method : 'post', baseParams : { sex : "男" }, defaults : { width : 230 }, defaultType : 'textfield', title : "Form", width : "700", height : "600", bodyStyle : "padding,6px", frame : true, items : [new Ext.form.TextField({ name : "userName", allowBlank : false, fieldLabel : "用户名" }), { name : "password", fieldLabel : "密码", inputType : "password", allowBlank : false, xtype : "textfield", minLength:6, minLengthText:"密码长度不能小于6个字符", maxLength: 10, maxLengthText: "密码长度不能大于10个字符" }, { name : "photo", fieldLabel : "照片", inputType : "file", allowBlank : false, xtype : "textfield" }, { name : "date", fieldLabel : "日期", width : 200, format : "Y-m-d", value : new Date(), xtype : "datefield" }, { name : "sex", inputValue : "0", boxLabel : "男", allowBlank : false, xtype : "radio", checked : true }, { name : "sex", inputValue : "1", boxLabel : "女", allowBlank : false, xtype : "radio" }, { name : "levle", inputValue : "1", boxLabel : "本科", allowBlank : false, xtype : "checkbox" }, { name : "age", fieldLabel : "年龄", allowBlank : false, xtype : "numberfield", maxValue : 100, minValue : 1 }, new Ext.form.TimeField({ fieldLabel : 'Time', name : 'time', minValue : '8:00am', maxValue : '6:00pm', format : "H:i" }), { fieldLabel : 'Email', name : 'email', vtype : 'email' }, { name : "ta", fieldLabel : "经历", xtype : "textarea", width : 100, height : 50 }, { name : "ta", fieldLabel : "个人简历", xtype : "htmleditor", height : 100, width : 500, enalbeLists : false, enableSourceEdite : true, enableColors : false, enableLinks : true }], buttons : [{ text : "确定", lableAlgin : "left", tooltip : "密码不能为空!", tooltipType : "qtip", handler : function() { f.getForm().submit({ success : function(f, action) { Ext.MessageBox.alert("SUC", action.result.msg + action.result.time); }, failure : function() { Ext.MessageBox.alert("ERROR", "提交失败"); } }); } }, { text : "重置", lableAlgin : "left", handler : function() { var feilds = f.getForm().items.items; for (var i = 0; i < feilds.length; i++) { feilds[i].reset(); } } }] }); f.render(Ext.getBody()); });
发表评论
-
AKKA 学习笔记之1
2013-09-15 15:08 23535AKKA 是一款基于actor模型实现的 并发处理框架。基 ... -
Ant 集成 junit 自动生成测试报告
2013-08-28 08:56 1023在当下Maven 统治大片江山,Gradle后起之秀的情况 ... -
很有用的测试工具
2013-08-27 11:21 7161. findbugs findbugs是一种静态 ... -
java 之 JNI
2013-08-27 11:06 1691前言: 在查看java socket实现代码时最终发现其 ... -
HSQLDB实现学习笔记-数据库服务器连接
2013-08-27 10:27 12661 数据库服务器连接 主要用于描述客户端是如何与 ... -
HSQLDB实现学习笔记-数据库服务器创建
2013-08-27 10:16 2985前言: HSQLDB作为一个纯java实现的开源数据库, ... -
反射实现 AOP 动态代理模式(Spring AOP 的实现 原理)(转)2
2011-04-13 14:01 12091package sinosoft.dj.aop ... -
反射实现 AOP 动态代理模式(Spring AOP 的实现 原理)(转)
2011-04-13 13:49 865转自: http://www.blogjava.net/Do ... -
Sun Remote Procedure Call
2011-04-05 15:45 1329Most network programming is ... -
pushlet
2011-03-31 22:54 879http://baike.baidu.com/view/246 ... -
Comet:基于 HTTP 长连接的“服务器推”技术(转)
2011-03-31 22:39 880http://www.ibm.com/developerwor ... -
冒泡排序
2011-03-30 16:03 991package com.datastruct.sort; ... -
快速排序
2011-03-30 16:02 943package com.datastruct.sort; ... -
Cookie
2011-03-30 14:11 8021、登录www.iteye.com 输入用户名,密 ... -
OCP秘笈
2011-03-29 22:19 734http://oracle.chinaitlab.com/Sp ... -
HashCode计算方法
2011-03-29 17:34 966Returns a hash code for this ... -
Merkle-Hellman背包算法
2011-03-23 17:54 1115转自:http://baike.baidu.com/view/ ... -
Android webService访问实例
2011-03-23 13:09 4292参考网上的例子实现一个简单的天气查看功能。 界面包含一个按钮, ... -
Android 源码查看
2011-03-22 14:10 1558在网上看了几个关于源码查看的方法但是都不是很清晰,此文列出 ... -
在Android中解析XML数据
2011-03-21 22:20 971http://www.williamhua.com/2009/ ...
相关推荐
ExtJS学习笔记.docExtJS学习笔记.docExtJS学习笔记.docExtJS学习笔记.doc
目录 1. ExtJs 结构树 2 2. 对ExtJs的态度 3 3. Ext.form概述 4 4. Ext.TabPanel篇 5 5. Function扩展篇 7 6. Ext.data.Store篇 10 7. Ext.data.JsonReader篇一 12 ...28. extJs 2.0学习笔记(ext.js篇) 77
### Extjs 5 学习笔记之 SenchaCmd 深入解析 #### 一、SenchaCmd 的简介 SenchaCmd 是一个跨平台的命令行工具,它为基于 ExtJS 和 Sencha Touch 应用程序的开发周期提供了全面的支持。从创建应用程序的基础结构到...
Extjs4.0学习笔记,以下是部分介绍: xtjs4,创建Ext组件有了新的方式,就是Ext.create(....),而且可以使用动态加载JS的方式来加快组件的渲染,我们再也不必一次加载已经达到1MB的ext-all.js了,本文介绍如何在EXTJS4...
适合ExtJs开发人员extjs技术上手以及深入
EXTJS in Action 是一本专为学习EXTJS编写的书籍,但这里我们主要关注学习笔记中的关键知识点。 首先,EXTJS的目录结构非常重要,因为它包含了所有必要的资源和源码: 1. `adapter`:这部分包含了适配器,用于将...
ExtJs简明教程+Extjs学习笔记,来源网络,免费奉送,我讨厌需要资源分~
语言程序设计资料:ExtJs学习笔记-2积分.doc
在探讨《ExtJS学习心得笔记》这一主题时,我们不仅会深入理解ExtJS框架的核心概念与实践技巧,还会从新手的角度出发,提炼出一系列有助于快速上手的学习策略,避免常见的学习陷阱,确保学习过程高效而有成效。...
这个学习笔记涵盖了从基础到高级的多个主题,帮助读者深入理解ExtJs的核心概念和技术。以下是一些关键知识点的详细说明: 1. **ExtJs 结构树**:这部分内容可能涉及ExtJs如何构建可自定义的用户界面组件树,包括...
Extjs4.0学习笔记大全.pdf,供大家学习
ExtJS 是一个强大的JavaScript框架,主要用于构建富客户端Web应用程序。...学习ExtJS可以帮助开发者快速构建功能丰富的、交互性强的Web应用。通过深入理解和实践,可以提升开发效率,创建出符合现代Web标准的用户界面。
本来我是打算自己写一个系列的 ExtJS 6 学习笔记的,因为 ExtJS 6 目前的中文 学习资料还很少。 google 搜索资料时找到了一本国外牛人写的关于 ExtJS 6 的电 子书 [Ext JS 6 By Example] 。这份资料在 PACKT 上卖 ...