- 浏览: 191578 次
- 性别:
- 来自: 北京
最新评论
-
WH_LPWH:
哥呀 牛逼 大赞一个
使用JAVA写出DBF出现乱码和数据错位 -
z390174504:
不错啊...ID和hide不能一样,多谢
后台取不到extJs2.3的comboBox手写输入的值 -
三里小龙:
linwei_211 写道三里小龙 写道mysql也会出现类似 ...
java.sql.SQLException: 无法从套接字读取更多的数据 -
linwei_211:
三里小龙 写道mysql也会出现类似的情况,但这个理由有点牵强 ...
java.sql.SQLException: 无法从套接字读取更多的数据 -
三里小龙:
mysql也会出现类似的情况,但这个理由有点牵强附会
java.sql.SQLException: 无法从套接字读取更多的数据
EXT JS 常见问题FAQ 收藏
1)
如果组件之间嵌套比较多的话,外面的Contaner 应尽量不要使用的 renderTo的属性来加载到某个div的id中,
应尽量在定义了Contaner后,用obj.render('id') 这个方面来加载组件,可以减少错误
2)
最好在最外层的Contaner组件(不是页面html,是extjs组件)定义with,不用定义height, 然后里面的一些组件
比如panel等可以定义autoWidth: true, autoHeight: true, 就可以使用整个显示自动适应了。
3)
要用到鼠标移上后出现提示框的都要先执行这句 Ext.QuickTips.init();
4)
注意 Ext.onReady 的使用
5)
如果有全局函数或全局的属性,不要放到onReady里面,即使只有onReady里面的对象调用了某个function,不然会提示
函数未定义,在onReady外定义全局函数,如果函数用到某个对象,可以用Ext.getCmp来取得ExtComponent,同样的,
即使是全局变量也一样,如果有iframe要调用parent中的变量,那更加要注意,这个变量只能定义在onReady外面,而
且该变量的赋值不能在onReady的结束处用getCmp等来赋值,要在某个具体的动作才赋值,比如按纽点击等。
6)
如果TabPanel有tab是用html: '<iframe src=' 来载入页面,但是要在iframe的页面中关闭TabPanel中
的某一个tab,可以使用如下的方法实现
TabPanel所以页面,定义一个全局变量 var tabPanel = null; 然后在 Ext.onReady 中给这个 变量赋
值,那么在iframe页面就可以通过 parent.tabPanel来取得这个变量了,然后再调用 tabPanel.remove('')
就可以删除TabPanel中的某一个tab
7)
Ext.get( 'htmlId' ); // 和document.getElementById('');不一样,返回的是Element
Ext.get( 'htmlId' ).dom; // 和document.getElementById('');一样,返回的是HTMLElement
Ext.getCmp( 'cmpId' ); // 返回的是 Ext.Component
Ext.isEmpty( Mixed value ); // 判断是否是空,包括空字符串
Ext.num( Mixed value, Number defaultValue ); // 判断是否是数字,不是就返回defaultValue
Ext.id( [Mixed el], [String prefix] ); // 生成一个唯一的id,
// 包 Ext.util.Format , 包括多种的格式化函数
8)
render();
// 空参数,可以使组件的子组件,或包含的panel等复位,不包括孙组件
// 比如viewport中的panel拖放后,调用后,panel会回到原来的地方
9)
bodyStyle: 'width:100%', 定义组件宽度100%
viewConfig: { forceFit: true }, // 如果grid的column指定了width的值,最好使用这个强制宽度
layout: 'fit',
iconCls: '', //用这个可以控制panel的title与左边框的距离
10)
用layout:'table'时记住要指明一下
layoutConfig: {
// The total column count must be specified here
columns: 3
},
11)
使panel自动适应面板的方法
首先定义一个 viewPort( {layout: 'border', items: []} ), 然后在items中添加一个
panel( {region: 'center', layout: 'fit', items:[]} ), 然后再在panel的items中添加
一个gridPanel( {autoHeight: true, layout: 'fit'} ), 这样就可以了
以下这个代码是非ViewPort使Panel自适应代码:
var panel = new Ext.Panel({
id: 'subpanel',
layout: 'column',
frame: true,
layoutConfig: { columns: 2 },
items: [
{ columnWidth: .5, layout: 'fit', items: [ tabpanel ] },
//tabpanel中不要指定width,但可以autoHeight: true, 但不能autoWidth: true,
{ columnWidth: .5, layout: 'fit', html:'<img id="imgpic" src="" style="width: 160px; height: 80px;" />' }
]
});
12)
{contentEl:'tab1', title:'Tab 1'},
// contentEl 一般是页面中有一个div,id为tab1, 那么当前的panel会自动将该div做为子元素纳入管理
13)js动态组装json
var datacolumn= [];
for (var i = 0; i < colcount; i++) {
datacolumn.push(['value'+i,'text'+i]);
}
var storecolumn = new Ext.data.SimpleStore({
fields : ['value', 'text'],
data : datacolumn
});
如何创建对象实例:
var app = function() { var privVar=11; return {p1:11, p2:22,init:function(){}};}();
js创建对象的原理:
实际上创建了一个匿名函数(没有名字的函数),经过解释之后让它立刻运行(注意函数后面的())。最后将函数返回的对象(注意此时是一个object变量)分配到变量o。
对象的访问控制
私有变量和私有函数直接定义在function和return这两个声明之间,由于这段代码的会在head中加载,因此不能访问页面中的html
return 中的函数如init,是由匿名函数返回的对象的一个方法而已。它会在文档全部加载后才运行。换言之整个DOM树已经是可用的了
实例环境
在new的cmp里指定scope:this; 把环境指向
Ext中的get、getDom、getCmp、getBody、getDoc的区别
get方法用来得到一个Ext元素,
getCmp方法-获得Ext组件,Ext.getCmp("h2").来得到id为h2的组件
getDom方法-获得DOM节点 Ext.getDom("div2"),得到id为div2的html DOM
getBody方法-得到文档的body节点元素 (Element)。
getDoc方法-获得与document对应的Ext元素(Element),实质上就是把当前html文档对象,也就是把document对象封装成ExtJS的Element对象返回,该方法不带任何参数。
如何重写公共变量
Ext.apply(app, { p1:33});
重写(Overriding)公共函数
Ext.apply(ns.app,
{
testfn: function()
{
alert('test');
}
}
);
指定onReady的scope有什么用
Ext.onReady(app.init, app);
用于公共函数中this调用其他公共函数
init : function(){
this.checkCount();
}
如何向页面dom id渲染
var p = new MyPanel({
renderTo:'hello',
title : 'My Second Panel'
});
或
var p = new MyPanel({
title : 'My Second Panel'
});
p.render("hello");
如保满屏全屏显示Ext组件 :
将组件放入ViewPort,前提是根布局一定要有一个 region:'center'
var vp = new Ext.Viewport({
layout : "fit",
items : [{
region:'center'
,border:true
,items: p
,layout:'fit'
,margins: '5 5 5 0'
,cmargins: '5 5 5 5'
}]
});
如何继承
// 构造器函数
var MyPanel = function(config) {
Ext.apply(this, {
width : 300,
height : 300
});
MyPanel.superclass.constructor.apply(this, arguments);
};
// My Panel继承了Ext.Panel
Ext.extend(MyPanel, Ext.Panel, {});
关于ext与JQ冲突的解决方法
ext与JQ冲突最致命在于$(this)在EXT传递上有问题,原因在于jQuery很多函数返回的是jQuery类型,其实就是数组,是经过一定封装的。
螃哈哈同志已经给出了三个方案:
1)通过jQuery中类似get()的方法,因为get()方法返回的是Element,那么就可以传入EXT.get()中了
2)在jQuery回调函数function(e)(注:很多都可以带有e这个事件参数)中做文章,通过 EXT.get(e.arget)来达到目的。
3)通过 $('p').lt(5).gt(3).parent().attr("id","myId") 强行设置id,再通过 EXT.get("myId") 来得到
转载自:http://blog.csdn.net/masterjames/archive/2010/07/29/5774342.aspx
1)
如果组件之间嵌套比较多的话,外面的Contaner 应尽量不要使用的 renderTo的属性来加载到某个div的id中,
应尽量在定义了Contaner后,用obj.render('id') 这个方面来加载组件,可以减少错误
2)
最好在最外层的Contaner组件(不是页面html,是extjs组件)定义with,不用定义height, 然后里面的一些组件
比如panel等可以定义autoWidth: true, autoHeight: true, 就可以使用整个显示自动适应了。
3)
要用到鼠标移上后出现提示框的都要先执行这句 Ext.QuickTips.init();
4)
注意 Ext.onReady 的使用
5)
如果有全局函数或全局的属性,不要放到onReady里面,即使只有onReady里面的对象调用了某个function,不然会提示
函数未定义,在onReady外定义全局函数,如果函数用到某个对象,可以用Ext.getCmp来取得ExtComponent,同样的,
即使是全局变量也一样,如果有iframe要调用parent中的变量,那更加要注意,这个变量只能定义在onReady外面,而
且该变量的赋值不能在onReady的结束处用getCmp等来赋值,要在某个具体的动作才赋值,比如按纽点击等。
6)
如果TabPanel有tab是用html: '<iframe src=' 来载入页面,但是要在iframe的页面中关闭TabPanel中
的某一个tab,可以使用如下的方法实现
TabPanel所以页面,定义一个全局变量 var tabPanel = null; 然后在 Ext.onReady 中给这个 变量赋
值,那么在iframe页面就可以通过 parent.tabPanel来取得这个变量了,然后再调用 tabPanel.remove('')
就可以删除TabPanel中的某一个tab
7)
Ext.get( 'htmlId' ); // 和document.getElementById('');不一样,返回的是Element
Ext.get( 'htmlId' ).dom; // 和document.getElementById('');一样,返回的是HTMLElement
Ext.getCmp( 'cmpId' ); // 返回的是 Ext.Component
Ext.isEmpty( Mixed value ); // 判断是否是空,包括空字符串
Ext.num( Mixed value, Number defaultValue ); // 判断是否是数字,不是就返回defaultValue
Ext.id( [Mixed el], [String prefix] ); // 生成一个唯一的id,
// 包 Ext.util.Format , 包括多种的格式化函数
8)
render();
// 空参数,可以使组件的子组件,或包含的panel等复位,不包括孙组件
// 比如viewport中的panel拖放后,调用后,panel会回到原来的地方
9)
bodyStyle: 'width:100%', 定义组件宽度100%
viewConfig: { forceFit: true }, // 如果grid的column指定了width的值,最好使用这个强制宽度
layout: 'fit',
iconCls: '', //用这个可以控制panel的title与左边框的距离
10)
用layout:'table'时记住要指明一下
layoutConfig: {
// The total column count must be specified here
columns: 3
},
11)
使panel自动适应面板的方法
首先定义一个 viewPort( {layout: 'border', items: []} ), 然后在items中添加一个
panel( {region: 'center', layout: 'fit', items:[]} ), 然后再在panel的items中添加
一个gridPanel( {autoHeight: true, layout: 'fit'} ), 这样就可以了
以下这个代码是非ViewPort使Panel自适应代码:
var panel = new Ext.Panel({
id: 'subpanel',
layout: 'column',
frame: true,
layoutConfig: { columns: 2 },
items: [
{ columnWidth: .5, layout: 'fit', items: [ tabpanel ] },
//tabpanel中不要指定width,但可以autoHeight: true, 但不能autoWidth: true,
{ columnWidth: .5, layout: 'fit', html:'<img id="imgpic" src="" style="width: 160px; height: 80px;" />' }
]
});
12)
{contentEl:'tab1', title:'Tab 1'},
// contentEl 一般是页面中有一个div,id为tab1, 那么当前的panel会自动将该div做为子元素纳入管理
13)js动态组装json
var datacolumn= [];
for (var i = 0; i < colcount; i++) {
datacolumn.push(['value'+i,'text'+i]);
}
var storecolumn = new Ext.data.SimpleStore({
fields : ['value', 'text'],
data : datacolumn
});
如何创建对象实例:
var app = function() { var privVar=11; return {p1:11, p2:22,init:function(){}};}();
js创建对象的原理:
实际上创建了一个匿名函数(没有名字的函数),经过解释之后让它立刻运行(注意函数后面的())。最后将函数返回的对象(注意此时是一个object变量)分配到变量o。
对象的访问控制
私有变量和私有函数直接定义在function和return这两个声明之间,由于这段代码的会在head中加载,因此不能访问页面中的html
return 中的函数如init,是由匿名函数返回的对象的一个方法而已。它会在文档全部加载后才运行。换言之整个DOM树已经是可用的了
实例环境
在new的cmp里指定scope:this; 把环境指向
Ext中的get、getDom、getCmp、getBody、getDoc的区别
get方法用来得到一个Ext元素,
getCmp方法-获得Ext组件,Ext.getCmp("h2").来得到id为h2的组件
getDom方法-获得DOM节点 Ext.getDom("div2"),得到id为div2的html DOM
getBody方法-得到文档的body节点元素 (Element)。
getDoc方法-获得与document对应的Ext元素(Element),实质上就是把当前html文档对象,也就是把document对象封装成ExtJS的Element对象返回,该方法不带任何参数。
如何重写公共变量
Ext.apply(app, { p1:33});
重写(Overriding)公共函数
Ext.apply(ns.app,
{
testfn: function()
{
alert('test');
}
}
);
指定onReady的scope有什么用
Ext.onReady(app.init, app);
用于公共函数中this调用其他公共函数
init : function(){
this.checkCount();
}
如何向页面dom id渲染
var p = new MyPanel({
renderTo:'hello',
title : 'My Second Panel'
});
或
var p = new MyPanel({
title : 'My Second Panel'
});
p.render("hello");
如保满屏全屏显示Ext组件 :
将组件放入ViewPort,前提是根布局一定要有一个 region:'center'
var vp = new Ext.Viewport({
layout : "fit",
items : [{
region:'center'
,border:true
,items: p
,layout:'fit'
,margins: '5 5 5 0'
,cmargins: '5 5 5 5'
}]
});
如何继承
// 构造器函数
var MyPanel = function(config) {
Ext.apply(this, {
width : 300,
height : 300
});
MyPanel.superclass.constructor.apply(this, arguments);
};
// My Panel继承了Ext.Panel
Ext.extend(MyPanel, Ext.Panel, {});
关于ext与JQ冲突的解决方法
ext与JQ冲突最致命在于$(this)在EXT传递上有问题,原因在于jQuery很多函数返回的是jQuery类型,其实就是数组,是经过一定封装的。
螃哈哈同志已经给出了三个方案:
1)通过jQuery中类似get()的方法,因为get()方法返回的是Element,那么就可以传入EXT.get()中了
2)在jQuery回调函数function(e)(注:很多都可以带有e这个事件参数)中做文章,通过 EXT.get(e.arget)来达到目的。
3)通过 $('p').lt(5).gt(3).parent().attr("id","myId") 强行设置id,再通过 EXT.get("myId") 来得到
转载自:http://blog.csdn.net/masterjames/archive/2010/07/29/5774342.aspx
发表评论
-
后台取不到extJs2.3的comboBox手写输入的值
2012-08-29 18:32 2886在用extJs2.3做页面的时候发现将comboB ... -
关于extjs(2.3) treepanel一点技巧
2012-08-01 16:02 12081.在做树的拖动的时候,遇到一个问题。树叶子节点无法进行app ... -
Ext.Ajax.request2.x实现同步请求
2012-06-25 11:08 3826Ext.Ajax.request在2.x是异步请求的 ... -
setAttribute()的使用方法与ie不兼容onclick事件解决方法
2011-12-31 13:12 2352setAttribute()的使用方法与ie不兼容onclic ... -
【仿IE顶部弹出提示】可用来设置公告可关闭
2011-12-31 13:11 1433第一种方式:基础写法 ... -
js 常用正则表达式表单验证代码
2011-08-19 11:20 1189js 常用正则表达式表单 ... -
Ext中的get、getDom、getCmp、getBody、getDoc的区别
2011-08-19 11:11 1320Ext中的get、getDom、getCmp ... -
js技巧
2011-08-19 10:47 1048javascript中几个有意思的 ... -
Combox下拉GridPanel菜单
2011-08-19 10:42 2641extjs Combox下拉GridPanel菜单 Ext ... -
重写时间控件,只有选择年月的界面
2011-08-19 10:39 5881下面是在ext官方网站上down的一个函数只显示年和月,不显示 ... -
修改ext中拖拽和CheckboxSelectionModel冲突的问题
2011-08-19 10:36 1757因为gridpanel定义了拖拽 所以致使选中gridpane ... -
浏览器窗口关闭事件的监听搜集
2011-08-19 10:16 1799方式一:(适用与IE浏览器,而且刷新不提示,只在点击浏览器关闭 ... -
GRID拖拽行的例子
2011-08-19 10:15 2897---------------------GRID拖拽 ... -
去掉gridPanel表头的全选框
2011-08-19 10:14 2296给gridpanel 加上listener即可 ,liste ... -
动态加载表单数据的例子
2011-08-19 10:11 1151<script type="text/java ... -
treepanel动态加载数据的例子
2011-08-19 10:10 2008var tree = new Ext.tree.TreePan ... -
gridpanel动态加载数据的例子
2011-08-19 10:07 1779<script type='text/javascrip ... -
combox带treepanel的例子
2011-08-19 10:06 2030new Ext.form.ComboBox({ id: '& ... -
项目开发中遇到的extjs常见问题
2011-08-19 10:04 12981.把一个汉字转成两个字符计数 Ext.getCmp('s ... -
event.keycode值大全
2011-08-19 10:02 870keycode 8 = BackSpace BackSpace ...
相关推荐
2. EXT_JS实用开发指南_个人整理笔记.docx:这是一份个人整理的学习笔记,可能包含了一些实战经验,对于学习EXT JS的实际应用和解决常见问题很有帮助。 3. ExtJS实用开发指南.pdf:同名但格式不同的文档,可能提供了...
最后,“EXT 中文帮助手册 .rar”可能是一个中文版的辅助学习资料,它可能包含了常见问题解答、最佳实践和技巧等内容,帮助开发者解决在实际开发中遇到的问题。 通过这些资源,你可以系统性地学习Ext JS,从基础...
以下是一些常见的EXT.NET问题及其解决方案: 1. **在窗口中嵌入网页**: 当需要在一个EXT.NET的`Window`组件中加载外部网页时,可以通过设置`autoLoad`属性来实现。例如,可以通过JavaScript动态设置`url`属性,如...
EXT JS是一种基于JavaScript的开源富客户端框架,专为构建企业级Web应用程序而设计。它提供了一套完整的组件化UI控件、数据绑定机制以及强大的事件处理系统,使得开发者能够创建功能丰富的、交互性强的Web应用。EXT ...
在"ext js 打包资源下载"中,我们讨论的是Ext JS 1.1.1版本,这是一个较早的版本,但仍然具有广泛的使用价值,尤其是对于那些需要无版权问题的解决方案的开发者来说。 `ext1.1的API已经使用说明`指的是Ext JS 1.1.1...
这本书分为三章,涵盖了Ext JS的关键概念和技术,旨在帮助开发者充分利用这个强大的JavaScript库来构建功能丰富的Web应用程序。 第一章可能涉及了Ext JS的基础和核心概念,包括MVC(Model-View-Controller)架构的...
5. "EXT 中文帮助手册 .rar":这是另一份中文帮助资料,可能提供了问题解决和常见任务的解答。 6. "www.pudn.com.txt":这可能是下载资源的来源网站信息,PUDN是一个分享软件、代码和文档的平台。 综上所述,这个...
《JavaScript凌厉开发——Ext JS3详解与实践》是一本深度探讨JavaScript库Ext JS3的专著,旨在帮助开发者深入理解和高效运用这一强大的前端框架。本文将围绕标题、描述及标签,详细介绍Ext JS3的核心概念、关键特性...
EXT JS 是一款强大的JavaScript库,专门用于构建富客户端应用程序。它提供了一系列的组件,包括表格、树形视图、图表、窗体等,使得开发者能够创建功能丰富的、交互性强的Web应用。Eclipse是一款广泛使用的Java开发...
Ext JS in Action Second Edition teaches Ext JS from the ground up You"ll start with a quick overview of the framework and then explore the core components by diving into complete examples ...
此外,文档可能还会介绍一些最佳实践和常见问题解答,帮助开发者避免陷阱,提高开发效率。 EXT JS 3.0 中文版文档的出现,无疑为中文开发者提供了一座桥梁,使他们能更便捷地掌握这一强大的前端框架,进一步提升Web...
Ext JS 是一个强大的JavaScript库,专门用于构建富客户端Web应用程序。这个库以其丰富的用户界面组件、数据绑定功能和可扩展性而闻名。Ext JS 提供了一整套预先封装的组件,如表格、面板、菜单、按钮、表单、树形...
EXT JS 是一款强大的JavaScript库,专门用于构建富客户端应用程序。其统计图表组件是EXT JS库中的一个重要部分,提供了丰富的图表类型和高度定制的功能,适用于数据分析、数据可视化以及各种业务报告。EXT JS Charts...
Ext JS是一个基于JavaScript的开源前端框架,用于构建跨浏览器的动态Web应用。其最显著的特点是提供了一套丰富的用户界面组件,这些组件在外观和感觉上都极为吸引人,非常适合构建富客户端(Rich Internet ...
EXT JS 是一个强大的JavaScript库,专门用于构建富客户端应用程序,尤其在企业级Web应用中广泛应用。EXT JS 提供了丰富的组件、布局管理、数据绑定、拖放功能等,使得开发者可以构建出美观且功能强大的用户界面。EXT...
Ext JS Library 2.2 是一个历史悠久且功能强大的JavaScript库,专为构建富客户端Web应用程序而设计。这个版本发布于2008年,是Ext JS系列中的一个重要里程碑,为开发者提供了丰富的用户界面组件和先进的数据绑定机制...
《深入浅出EXT JS源码》是一本专为EXT JS开发者设计的图书,旨在帮助读者理解EXT JS框架的内部工作原理,提升开发技能。...在实际项目中,这种深入理解将有助于优化性能,解决疑难问题,以及创建更高效的EXT JS应用。
EXT JS 是一种基于JavaScript的开源富因特网应用程序框架,主要用来构建交互式的Web应用。这个压缩包"ext-js.zip"包含了一份名为"EXT-JS.pdf"的文档,据描述,这是一份针对EXT JS的中文教程,适合初学者进行入门学习...
EXT JS是一种基于JavaScript的开源富客户端框架,专为构建交互式Web应用程序而设计。它提供了大量的组件和功能,包括表格、树形视图、图表、菜单、工具栏、窗体等,使得开发者能够构建功能丰富的桌面级应用界面。EXT...
Ext JS 是一款基于 JavaScript 的前端框架,主要用于构建复杂的企业级 Web 应用程序。它提供了一套丰富的 UI 组件库以及一系列用于数据处理、应用架构设计等功能模块。自发布以来,Ext JS 不断迭代更新,版本4(Ext ...