`
alfredgao
  • 浏览: 137920 次
  • 性别: Icon_minigender_1
  • 来自: 青岛
社区版块
存档分类
最新评论

Ext常用问题的总结(转载自http://ext.group.javaeye.com/group/)

阅读更多
scripts/ext/resources/css/ext-all.css//EXT通用CSS,包含所有的样式(必须)
scripts/ext/resources/css/icon.css//自定义存放菜单项或其他页面图标
scripts/utils/HiTRUST-CMS.css//老版本支付系统的CSS
scripts/ext/ext-base.js//框架基础库(必须)
scripts/ext/ext-all.js //包含了所有的EXT类库(必须)
scripts/ext/ext-lang-zh_CN.js//EXT所有的中文提示(必须)
文件导入顺序
要试用Ext必须最少要把上面标注为必须的JS和CSS包含在页面中,并且,请注意导入的顺序,由于ext-all.js是依赖于ext-base.js,所以ext-base.js先导入,js里面使用的样式都来自于ext-all.css,所以最先导入
问题集锦
1:关于试用(docs.js )tab页不能显示,或者禁止JS的问题
解决方法,在实例化autoLoad对象时,需要设置里面的scripts属性,默认是false,即,加载的tab子页面,不执行javascript,需要调整成如下:
A:Var autoLoad={url:heaf,scripts:true};
当然也可以嵌套个iframe,
B:html:’<iframe src=”+url+” width=”100%” height=”100%”/>’,
这样的话,就意味着每次都要加载EXT类库,但是单个页面的变得可分离,耦合降低

2:关于email验证问题
xtype:'textfield',
fieldLabel: '电子邮箱',
id: 'edit_SPEmail',
name: 'sPEmail',
vtype: 'email',//这个加上后就可以验证EMAIL了
anchor:'95%'

3:关于select的使用问题
//创建JSON数据
var statusArray=[
['正常','正常'],
['注销','注销'],
['冻结','冻结']
];
//使用
xtype:'combo',
store: new Ext.data.SimpleStore({
fields: ['value', 'descp'],
data :statusArray
}),
fieldLabel: '状态',
loadingText:'正在加载...',
displayField:'descp', //隐藏的数据
valueField:'value', //显示的数据
mode:'local', //读取本地数据(remote表示远程数据)
triggerAction:'all',
id:'StatusID',
hiddenName:'StatusName',
editable:true, //是否可以编辑,同时此属性也支持输入搜索功能

4:关于文本框输入基本验证
allowBlank:false,//如果为空,则显示提示信息
minLength:6,//最少允许字符数
minLengthText:'请您输入最少6个字符!', //少于最少允许字符数,则提示该信息
maxLength:12, //最大允许字符数
maxLengthText:'请您输入最多50个字符!', //多于最大允许字符数,则提示该信息

5: EXT怎样实现PSOT
参考程序代码如下:
buttons: [{
text: '提交',
handler:function(){//当点击按钮执行这个函数
//验证有效性
if(win.getComponent('form').form.isValid()){
//login为from的id
win.getComponent('form').form.submit({
url:'login_chk.php',
waitTitle:'提示',
method: 'POST',
waitMsg:'正在登录验证,请稍候...',
success:function(form,action){//如果post成功执行这里
var loginResult = action.result.success;
if(loginResult == false){
//如果login_chk.php返回false执行这里
alert(action.result.message);
} else if(loginResult == true){//成功执行这里
alert(action.result.message);
}
} ,
failure: function(form,action) { //未执行或POST失败,返回异常
alert(action.result.message);
}
});
}
}
},{
text: '取消',
handler:function(){simple.form.reset();}//重置表单
}]
后台返回:
if(验证成功){
out.print( "{success:true,message:\"执行成功!\"}");
}else{
out.print( "{success:false,message:\"执行失败!\"}");
}
备注:
当然也可以不采用这种用POST,可以手动获取值,采用DWR等AJAX技术,也可以实现,其实原理是一样的,都是异步调用

6:关于乱码的解决方案
乱码一直是个头疼的问题,特别是JS和页面,前台和后台之间的交互,建议采用统一编码UTF-8,或者是GBK,一般都可以很好的解决,如果不行,可以实现个过滤器,统一实现请求和恢复信息编码的一致性,当然还可以手动的改变字符的编码格式,然后再手动解码

7:为什么我的文本框设置了输入不合法提示,但是却不能显示提示文本
Ext.QuickTips.init();//初始化鼠标停留时的显示框,支持tips提示
//提示的方式,枚举值为"qtip","title","under","side",id(元素id)
Ext.form.Field.prototype.msgTarget='side';
Qtip:比如默认的“qtip”就是鼠标移动上去自动显示
Side:用的较多,右边出现红色感叹号,鼠标上去出现错误提示
Title: 类似于普通HTML控件里面的title属性一样提示,鼠标悬停就显示
Under: 显示在控件的下面,主动显示,不需要鼠标悬停
前提,如果您的文本框没设置验证,也不能显示



8:怎么实现EXT那样的验证呢?
//form验证中vtype的默认支持类型
1.alpha //只能输入字母,无法输入其他(如数字,特殊符号等)
2.alphanum//只能输入字母和数字,无法输入其他
3.email//email验证,要求的格式是jack_luoting@126.com
4.url//url格式验证,要求的格式是http://www.skywin.com

实现自定义验证
//先用Ext.apply方法添加自定义的password验证函数(也可以取其他的名字)
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;
}
});
//配置items参数
items:[{fieldLabel:"密码",
id:"pass1",
anchor:"90%"
},{
fieldLabel:"确认密码",
id:"pass2",
vtype:"password",//自定义的验证类型
vtypeText:"两次密码不一致!",//不合法提示
confirmTo:"pass1",//要比较的另外一个的组件的id
anchor:"90%"
}

9:实现选填显示


可选的fieldset实例
其实就是带个chechbox,有点像论坛注册时有一部分是选填信息的那种效果,主要知识点:
1.checkboxToggle:true//true则呈现一个带checkbox的fieldset,选中则展开,否则相反,默认为false
2.checkboxName:string//当上面为true时,作为checkbox的name,方便表单操作
{
xtype:"fieldset",
checkboxToggle:true,//关键参数,其他和以前的一样
checkboxName:"dfdf",
title:"选填信息",
defaultType:'textfield',
width:330,
autoHeight:true,//使自适应展开排版
items:[{
fieldLabel:"UserName",
name:"user",
anchor:"95%"//330px-labelWidth剩下的宽度的95%,留下5%作为后面提到的验证错误提示
},{
fieldLabel:"PassWord",
inputType:"password",//密码文本
name:"pass",
anchor:"95%"
}]
}
分享到:
评论
1 楼 liujiang_ss 2008-09-17  
总结的非常好

相关推荐

    http://yourgame.javaeye.com/blog/252853

    标题 "JavaEye博客文章——深入理解HTTP你的游戏" 这篇博客文章是关于深入理解HTTP协议的,作者通过"你的游戏"这个实例,详细讲解了HTTP在实际应用中的运作机制,特别是对于游戏开发而言的重要知识点。HTTP(超文本...

    常用Java Web应用软件 (LNMJ,LAMJ)安装

    本文主要总结了在Ubuntu10下常用Java Web应用软件的安装,特别是LNMJ Web(Linux+Nginx+Mysql+Java Tomcat)架构和LAMJ Web(Linux+Apache+Mysql+Java Tomcat)架构下的软件安装。为进一步配置和实现LNMJ和LAMJ架构(负载...

    50个论坛地址

    根据提供的信息,我们可以总结出以下相关的IT知识点: ### 1. J2ME 开发社区 - **J2MEDev**(http://www.j2medev.com/bbs/index.asp): 这是一个专注于J2ME技术的论坛,为开发者提供了一个交流平台。J2ME是Java 2 ...

    JAVA web.xml配置详解

    -- 配置集群的时候,要用到,在这篇文章:“apache+tomcat集群、负载均衡及session复制”里的第三条(http://jiajun.javaeye.com/admin/blogs/278586) --&gt; &lt;distributable/&gt; &lt;!-- context-param 元素用来设定...

    JAva资源网站大全

    这里适合那些想要将理论知识应用于实际工作的Java开发者,帮助他们提升解决实际问题的能力。 ### 6. CSDN Java专区 网址:http://java.csdn.net/ CSDN是国内知名的IT技术社区,其Java专区汇聚了大量的技术博客、...

    Flex + Hessian 留言本

    Flex + Hessian 学习笔记(一) http://wangcheng.javaeye.com/blog/141382 Flex + Hessian 学习笔记(二) http://wangcheng.javaeye.com/blog/141539 Flex + Hessian 学习笔记(三) ...

    hadoop学习资料地址

    3. **Hadoop部署与升级**:`http://www.slideshare.net/steve_l/dynamic-hadoop-clusters`, `http://zkl-1987.javaeye.com/blog/365172`, `http://www.javaeye.com/topic/365172` - 提供了Hadoop集群部署的最佳实践...

    Java 学习资料

    5. **JavaEye([http://www.javaeye.com/](http://www.javaeye.com/))** - **特点**:这曾经是Java开发者非常活跃的一个社区,虽然现在已不再更新,但其历史资料仍然具有很高的参考价值。 - **适用人群**:适合...

    html5-css3

    6. **HTML5和CSS3资源分享**([http://www.javaeye.com/news/16684-html5-css3](http://www.javaeye.com/news/16684-html5-css3)) - 分享了一些高质量的HTML5和CSS3资源链接,有助于开发者扩展视野。 7. **CSS3...

    android学习资料(网站,论坛)

    1. **eoeandroid论坛(http://www.eoeandroid.com/)**:作为国内知名的Android技术社区,这里汇聚了大量的开发者,提供丰富的技术讨论和问题解答。 2. **HiAPK论坛(http://hiapk.com/)**:不仅提供软件下载,...

    手把手教你使用Maven进行Android的从配置到开发与资源管理教程.doc

    - Maven的中文手册可参考[http://www.juvenxu.com/mvn-def-guide/](http://www.juvenxu.com/mvn-def-guide/)和[http://juvenshun.javaeye.com/5](http://juvenshun.javaeye.com/5)。 **5. Maven项目导入Eclipse** ...

    java学习的特别网站

    5. **JavaEye** - &lt;http://www.javaeye.com/&gt; - **简介**:一个以Java技术为主的社区,汇集了大量的Java程序员和技术爱好者。 - **特色**:强大的技术交流平台,用户可以在这里找到各种技术难题的解答。 6. **...

    java学习网站荟萃

    9. **[JavaEye招聘](http://www.iteye.com/javaeye)**:由JavaEye社区提供的招聘服务,适合寻找Java相关职位的人士。 10. **[广东程序员人才网](http://www.gdjob168.com/)**:专门针对广东省地区的招聘网站,适合...

    java学习网站

    - **网址**: http://www.javaeye.com/ - **简介**: 这个社区不仅提供Java技术方面的资讯和教程,还拥有活跃的技术交流氛围。 **1.6 LearnJava** - **网址**: http://www.learnjava.cn/ - **简介**: 专注于Java技术...

Global site tag (gtag.js) - Google Analytics