`
gao_20022002
  • 浏览: 164748 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

EXTJS4 郁闷的Loading

 
阅读更多

使用EXTJS4,写联动的combo控件,首次选择联动效果,可以正常显示和选择。

 


 

再次切换选择‘一级编码’,动态加载‘二级编码’数据可以正常加载,但是始终出现一个loading的遮盖层,选择不了下拉数据,奇怪的问题,寻求解决方案:

 


 

代码格式基本如下:

 

1、存储first_store,‘一级编码’的数据源,设置为autoLoad : true

 

 

var first_store = Ext.create('Ext.data.Store', {
			model : 'eht.model.ColVal',
			proxy : {
				type : 'ajax',
				url : '../myconfig/Config_viewConfigForCV.go?command=all.first&n='+new Date().getTime(),
				fields : ['col_id', 'col_name'],
				reader : {
					type : 'json',
					root : 'data'
				}
			},
			autoLoad : true,
			remoteSort:true
		});

 2、combo的‘一级编码’,在select中处理‘二级编码’的查询设置。

 

 {
		       	                xtype : 'combo',
		       	                fieldLabel : '一级编码',
		       	                blankText : "此项不能为空",
								emptyText : '此项不能为空',
								allowBlank : false,
								margin : '0 5 0 0',
								id : 'first_id',
								name : 'first_id',
								hiddenName : 'first_id',
								displayField : "col_name",
								valueField : "col_id",
								triggerAction: 'all',
								queryMode: 'local',
								store : first_store,
								listeners : {
										select : function(combo, record, index) {
											Ext.getCmp('second_id').clearValue();
											Ext.getCmp('second_id').store.load({params:{first_id:combo.value}});
											
										}
								}
							}

 3、cmbo的‘二级编码’设置

 

xtype : 'combo',
		        	          editable : false,
							  allowBlank : false,
							  margin : '0 5 0 0',
							  fieldLabel : '二级编码',
							  id:'second_id',
							  name:'second_id',
							  hiddenName:'second_id',
							  emptyText : '请选择...',
							  displayField : 'col_name',
							  valueField : 'col_id',
							  queryMode: 'local',
							  triggerAction: 'all',
							  typeAhead: true,
							  store : 
							  	{
							        extend: 'Ext.data.Store',
									model : 'eht.model.ColVal',
									proxy : {
										type : 'ajax',
										url : '../myconfig/Config_viewConfigForCV.go?command=all.second&n='+new Date().getTime(),
										fields : ['col_id', 'col_name'],
										reader : {
											type : 'json',
											root : 'data'
										}
									},
									autoLoad : false,
									remote : true,
									remoteSort:true,
									listeners : {
										load: function(store){
										    Ext.getCmp('second_id').setValue(store.getAt(0).get('col_id')) 
										} 
									}
							  },
							  lastQuery: ''
				            }

 4、不知道哪里的问题,可以看见数据都可以正常加载,就是在选择那个‘二级编码’后,切换‘一级编码’,再次选择‘二级编码’,就出现一个loading的遮盖层,选择不了数据,但是数据可以看见已经正常加载了????

  • 大小: 6.3 KB
  • 大小: 4.2 KB
分享到:
评论
5 楼 zbg1983 2013-05-09  
jumboluo 写道
这是一个Ext的一个bug:
http://www.sencha.com/forum/showthread.php?153490-Combo-Box-Store-Loading

解决方法:
store.on('load', function (store, records, successful, options) {
    if (successful && Ext.typeOf(combo.getPicker().loadMask) !== "boolean") {
        combo.getPicker().loadMask.hide();
    }
});

4 楼 caelyntang 2012-12-26  
在二级联动加载的时候提前加载一次二级联动,不是根据一级联动的值加载的哦
3 楼 55558888 2012-08-09  
将 queryMode: 'local', 改为  queryMode: 'remote'
2 楼 jumboluo 2012-03-30  
这是一个Ext的一个bug:
http://www.sencha.com/forum/showthread.php?153490-Combo-Box-Store-Loading

解决方法:
store.on('load', function (store, records, successful, options) {
    if (successful && Ext.typeOf(combo.getPicker().loadMask) !== "boolean") {
        combo.getPicker().loadMask.hide();
    }
});
1 楼 jumboluo 2012-03-30  
也遇到同样的问题,也不知道怎么解决啊。

相关推荐

    Extjs的loading效果

    ExtJS的loading效果是指当数据正在后台加载或页面正在处理时,显示的一种视觉提示,告知用户系统正在进行工作。这通常是一个旋转的指示器或文字提示,如“正在加载...”。这种效果可以避免用户在等待过程中感到迷茫...

    解决extjs API文档不断Loading

    标题“解决extjs API文档不断Loading”涉及到的问题是ExtJS框架在使用其API文档时可能出现的一个常见问题,即文档页面加载无休止,无法正常显示内容。这可能是由于多种原因引起的,包括网络连接问题、浏览器兼容性...

    extjs4mvc的crud

    ExtJS 4 MVC 是一种基于 Sencha ExtJS 框架的前端开发模式,用于构建交互性强、功能丰富的Web应用程序。在"extjs4mvc的crud"这个主题中,我们将深入探讨如何使用ExtJS 4的Model-View-Controller(MVC)架构来实现...

    Extjs4 Combox tree

    ExtJS4中的ComboxTree是一种将下拉列表与树形结构结合的组件,它扩展了标准的ComboBox,提供了更丰富的用户交互体验。这种组件在数据展示和选择时特别有用,尤其是在处理具有层级关系的数据时,比如部门结构、地区...

    ExtJs4 Checkbox tree

    ExtJs4 Checkbox Tree是基于ExtJs 4框架实现的一种特殊树形组件,它在传统的树形结构基础上增加了复选框功能。这种组件常用于需要用户多选树形数据的场景,比如权限设置、目录选择等。下面将详细介绍ExtJs4 Checkbox...

    extjs4 下拉菜单树 combobox+tree 支持单选多选

    在EXTJS4中,下拉菜单树(ComboBox+Tree)是一种高级UI组件,它结合了ComboBox的下拉选择框和TreePanel的树形结构,提供了一种用户友好的交互方式,用于展示层次化的数据。这种组件特别适用于需要从多个选项中进行...

    extjs 学习心得笔记

    4. **数据绑定与模型使用**:掌握ExtJS的数据绑定机制,了解如何使用模型(Model)、存储(Store)和数据代理(Proxy)来管理应用数据,这是构建动态Web应用的关键。 5. **样式与主题定制**:ExtJS提供了强大的样式定制...

    extjs+asp例子

    - **性能优化**:通过延迟加载(lazy loading)、分页加载(paging)等策略减少初始加载的数据量。 - **安全性**:确保ASP代码的安全性,防止SQL注入等攻击,同时使用HTTPS协议保证数据传输安全。 7. **调试与...

    EXTJS4.0.7下载

    EXTJS4.0.7是4.x系列的一个稳定版本,它在4.0的基础上进行了多项改进和增强,提供了更完善的API和性能优化。 首先,EXTJS4.0.7引入了全新的MVC(Model-View-Controller)架构,这是一种软件设计模式,用于分离应用...

    ExtJs教程_完整版

    - **动态加载(Dynamic Loading)**:支持动态加载组件和数据,提高应用响应速度。 #### 四、国际化支持 - **多语言支持(Multi-Language Support)**:ExtJS提供了内置的语言包,使得开发者能够轻松地将应用本地化到...

    Extjs树分页组件扩展

    在原生的TreeLoader中,所有的节点通常是一次性加载或者按需加载(lazy loading)。而在分页场景下,我们希望只加载当前视图所需的节点,而不是全部。通过扩展TreeLoader,我们可以添加新的方法和属性来支持分页加载...

    ExtJS效果Tabs形式

    对于包含大量数据的标签页,可以使用懒加载(Lazy Loading)策略,只有在用户切换到特定标签时才加载其内容,从而提高应用的启动速度和响应性。 综上所述,"ExtJS效果Tabs形式"涵盖了创建、配置、操作以及美化...

    ExtJS3X最新中文书籍.rar

    4. **Ajax支持**:通过AJAX,ExtJS可以实现异步数据交换,提供无缝的用户体验,无需刷新整个页面即可更新内容。 5. **图表和图形**:虽然3X版本可能不像后来的版本那样拥有丰富的图表组件,但它仍然提供了一些基础...

    Extjs3.2.0+asp.net动态Tree

    6. **动态加载(Dynamic Loading)**:在动态Tree中,不是一次性加载所有节点,而是按需加载。当用户展开一个父节点时,才发送Ajax请求获取该父节点的子节点数据,这样减少了初始加载的时间,提高了用户体验。 7. *...

    Extjs 动态加载树

    动态加载树(Dynamic Loading Tree)是指在用户滚动或展开树节点时,仅加载当前需要显示的数据,而非一次性加载所有数据,这有助于提高页面性能和用户体验。 在描述中提到的博客链接可能提供了一个实现动态加载树的...

    ExtJs 2.2 简明教程 02 基础知识

    - **性能优化**:合理使用延迟加载(Lazy Loading)、缓存策略以及优化渲染过程,提升应用程序性能。 4. **核心概念**: - **Ext.Element**:表示DOM元素,提供了丰富的操作DOM的方法。 - **Ext.Component**:...

    extjs实现报表

    - **大数据量处理**:使用分块加载(Chunk Loading)策略,只加载视口内的数据,提高响应速度。 10. **最佳实践与示例** - 学习官方文档和示例代码,理解并应用最佳实践,避免常见陷阱。 - 使用社区资源,如...

    ExtJs搜索控件、插件

    使用分页、延迟加载(lazy loading)或即时加载(infinite scrolling)策略可以改善性能。同时,预处理和缓存搜索结果也是优化的重要手段。 通过以上介绍,我们可以看出`SearchField.js`在构建一个功能丰富的搜索...

    extjs4.2 最小核心文件

    此外,为了提高用户体验,还可以利用延迟加载(Lazy Loading)技术,只在需要时加载特定的组件和类。 总的来说,"extjs4.2 最小核心文件"代表了运行一个基本ExtJS 4.2应用程序的基础,它包括了框架的核心功能、一个...

    ExtJs-progressbar.rar_ExtJs progressbar_progressbar extjs

    4. **异步操作模拟**:在实际应用中,进度条通常与后台的异步操作配合使用。可以通过定时器模拟这种异步行为,每隔一段时间更新进度,直到达到100%。 ```javascript function fakeLoad() { var increment = 0.01;...

Global site tag (gtag.js) - Google Analytics