Extjs 怎么控制combo 数据加载与赋值的先后顺序

在form 表单中,有多个combo 下拉框, 使用 form.getForm().load() 方法请求数据并为表单赋值,
这样会造成 combo 数据还没有加载完就给 combo 赋值, 会导致无法赋上值,
如果 各个combo 还有级联关系就更加恼火了, 各位大神有不有解决办法诶---怎么控制combo 数据加载与赋值的先后顺序;

1个回答

Ext.ajax加载数据存储进入变量中,用loadReocrd方法加载,combo添加load事件,然后通过存储的变量重新赋值,有联动的情况自己在第一级的combo的load事件中赋值完毕后再加载2级的

combo你用本地数据不就行了,干嘛用加载远程的

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
Python+OpenCV计算机视觉

Python+OpenCV计算机视觉

extjs修改combo的值,setValue()修改不了

如题。,extjs修改combo的值,setValue()修改不了;我要的是刷新界面就修改combo的值,

extjs使用rowEditing时combo的赋值问题

首先是grid的显示 ![](http://img.bbs.csdn.net/upload/201507/21/1437466226_776631.jpg) 进行编辑后 ![](http://img.bbs.csdn.net/upload/201507/21/1437466308_513933.jpg) ![](http://img.bbs.csdn.net/upload/201507/21/1437466330_215239.jpg) 这是举办方列的js代码,绑定的是一个对象 ![](http://img.bbs.csdn.net/upload/201507/21/1437466517_953533.jpg) 问题就是怎么对编辑时的combo进行赋值,让它能正常显示文本。还有后面的时间控件也是这个问题,时间控件绑定的值都是Date(1438272000000)这样的文本 ![](http://img.bbs.csdn.net/upload/201507/21/1437466845_820173.jpg)

如何解决estjs中异步数据加载失败问题(加载数据超时导致数据加载失败),或延长extjs异步数据加载时间?

如何解决estjs中异步数据加载失败问题(加载数据超时导致数据加载失败),或延长extjs异步数据加载时间?

extjs中的grid中的数据加载问题!

{ header : 'psnId', hidden:true, dataIndex : 'psnId' }, { header : '部门/单位', width:120, align: 'left', sortable: true, //dataIndex : 1=='DEP_001'?'psnDeptName':'psnOrgName' } 基本代码如上,怎样才能在不同的情况下,一种情况显示部门名称,一种情况显示机构名称。求大神指点一下!!!

extjs mvc combo和数据库数据绑定问题

各位大神能不能给我一份例子,java语言的,combo获取数据库数据,后台返回Json格式的,前端接收!!网上找了一些,试过了还是不行,有点乱,谢谢各位的帮忙

extjs form表单绑定数据

``` Ext.define('taskList', { extend: 'Ext.data.Model', fields: [ { name: 'TASK_ID', type: 'string' }, { name: 'ITEM', type: 'string' }, { name: 'INFO', type: 'string' }, { name: 'MARK', type: 'int' }, { name: 'EMPID', type: 'string' }, { name: 'ACCESSORY', type: 'string' }, { name: 'CLAIM_TIME', type: 'string' } ] }); var storeList = Ext.create('Ext.data.Store', { model:'taskList', proxy: { type: 'ajax', url: 'taskList.action?task_id='+task_id, reader: { type: 'json', root: 'taskList' } } }); storeList.load(); myFormPanel.getForm().loadRecord(storeList); ``` 这句话有什么问题?为什么文本框就是不显示数据?store里已经有数据了。 ``` Ext.define('taskList', { extend: 'Ext.data.Model', fields: [ { name: 'TASK_ID', type: 'string' }, { name: 'ITEM', type: 'string' }, { name: 'INFO', type: 'string' }, { name: 'MARK', type: 'int' }, { name: 'EMPID', type: 'string' }, { name: 'ACCESSORY', type: 'string' }, { name: 'CLAIM_TIME', type: 'string' } ] }); var userRecord = Ext.create('taskList', { ITEM: 'Qi Fei', INFO: 'youring2@gmail.com', MARK:1, EMPID:'Qi Fei', ACCESSORY:'Qi Fei', CLAIM_TIME:'Qi Fei' }); myFormPanel.getForm().loadRecord(userRecord); ``` 我换成静态的数据就能加载上去

extjs gridpael 重新加载问题

我想实现这样一个功能: 有一个表单和一个grid 表单,主要是一些查询条件 grid 用来显示查询的结果, 当页面第一次加载的时候grid里面可以显示所有数据, 当我在表单中输入了查询条件提交以后,grid中显示新的数据

extjs里的form赋值问题

[code="java"] // java对象 public class PropertyIdc { /** * 获取读卡器类型 */ private String variant; private StatusIdc statusIdc; } public class StatusIdc { private String status; } extjs items : [ { fieldLabel : '读卡器类型', name : 'variant' }, { fieldLabel : '是否具有退卡能力', name : 'statusIdc.status' } 赋值我是采用: tab.getForm().load({ url : url, method : 'GET', failture : function(form, action) { Ext.Msg.alert("Tip", "Data Load Fail!"); } }); 问题是: variant这个属性可以赋值上去,但statusIdc.status赋值不上. 返回的json格式是:{"data":{"variant":"CHIP_CONNETED","statusIdc":{"status":"Healthy"}},"success":true} [/code]

ExtJs里如何获取combo组件的额外data?

最近刚上手ext,做的真是窝火。 原先html+JQuery里的好多思维和方法没法用了。 比如原先在html里这样一个简单的功能: 一个select标签,我可以很轻易的取到选中项 ``` <option value="001" selfData="xxx">A</option> ``` 然后使用 .attr("selfData")就可以轻松的取到自定义的这个值。 但是在ext里,真心无力吐槽啊, 我先在viewPanel里定义了一个combo组件,这东西类似于select标签吧 然后在controller里的afterrender方法里,通过后台取值获得对象: var data = [{id:001,text:A,selfData:xxx}, {id:002,text:B,selfData:yyy}, {id:003,text:C,selfData:zzz}]; 然后我用combo.getStore().load(data)方法给组件渲染上数据,它就有选项了可不是。 那么问题来了,当我选中一项后,我如何获得这个选项上的selfData这个字段的值啊,查API文档,JS打断点调试,搜索问题,折腾了半天都没法解决。ext真是做的让人窝火

extjs4.2 tree panel 重复加载!

这是后台返回的JSON {"mytree":[{"description":"faffaf","name":"wafa","children":[{"description":"wowowo","name":"hahaha","leaf":true,"expanded":true}],"info":"xxxxxx"}]} 前台点开节点时,它一直重复发请求如图 ![CSDN移动问答][1] js 代码如下 enter code her evar store = Ext.create('Ext.data.TreeStore', { fields: ['name', 'description','info'], proxy : { type : 'ajax', url : 'ziyuan/getData.do', reader: { root: 'mytree', type: 'json' } }, root:{ name:"xxx" } }); enter code here Ext.create('Ext.tree.Panel', { renderTo: Ext.getBody(), store : store, title: '一颗拥有多列的树', columns: [{ xtype: 'treecolumn', text: '节点名', dataIndex: 'name', width: 150, sortable: true }, { text: '描述', dataIndex: 'description', flex: 1, sortable: true }, { text: '信息', dataIndex: 'info', flex: 1, sortable: true }] }); [1]: http://img.my.csdn.net/uploads/201410/29/1414572517_8516.jpg

extjs 一次加载数据 前台分页问题

后台拿到的json [code="js"] [['0','张三','0','15246532154'],['1','李四','0','15246532154'],['2','王五','0','15242342154'],['3','李磊','0','15245678987'],['4','卡卡','0','12321313321'],['5','阿斯达','1','12131312322'],['6','斯巴达','1','11231231231'],['7','李欧','1','23343434343']] [/code] 前台ext代码: [code="js"] /** * 前台分页 */ Ext.onReady(function() { var sm = new Ext.grid.CheckboxSelectionModel(); var cm = new Ext.grid.ColumnModel([ // 序号 new Ext.grid.RowNumberer(), sm, { header : '编号', dataIndex : 'id', sortable : true, type : 'int' }, { header : '姓名', dataIndex : 'name' }, { header : '性别' }, { header : '电话', dataIndex : 'phone' }]); var reader = new Ext.data.ArrayReader({}, [{ name : 'id' }, { name : 'name' }, { name : 'sex' }, { name : 'phone' }]); var store = new Ext.data.Store({ reader : reader }); // 读取后台传递于前台数据 Ext.Ajax.request({ url : '../test/user2.show', method : 'get', success : function(response, opts) { var obj = Ext.decode(response.responseText);// obj储存响应的数据 store.proxy = new Ext.data.PagingMemoryProxy(obj) // PagingMemoryProxy() // 一次性读取数据 }, failure : function() { Ext.Msg.alert("读取数据失败"); } }); // 分页条 var pagebar = new Ext.PagingToolbar({ pageSize : 5,// 每页显示条数 store : store, beforePageText : "当前第", afterPageText : "页,共{0}页", lastText : "尾页", nextText : "下一页", prevText : "上一页", firstText : "首页", refreshText : "刷新页面", displayInfo : true, displayMsg : "当前显示 {0} - {1}条, 共 {2}条", emptyMsg : "没有记录" }); var grid = new Ext.grid.GridPanel({ renderTo : 'grid', autoHeight : true, store : store, mode : "remote", cm : cm, sm : sm, loadMask : { msg : '正在加载数据,请稍侯……' }, tbar : pagebar }); store.load({ params : { start : 0, limit : 5 } });// 按5条记录分布 }); [/code] [code="html"] <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>前台分页</title> <link rel="stylesheet" type="text/css" href="../js/ext-3.3.1/resources/css/ext-all.css" /> <script type="text/javascript" src="../js/ext-3.3.1/ext-base.js"></script> <script type="text/javascript" src="../js/ext-3.3.1/ext-all.js"></script> <script type="text/javascript" src="../js/ext-3.3.1/ext-lang-zh_CN.js"></script> <script type="text/javascript" src="js/PagingMemoryProxy.js"></script> <script type="text/javascript" src="js/diygrid2.js"></script> </head> <body> <div id="grid" style="height:265px;"></div> </body> </html> [/code] 页面始终处于加载中,分页数据不显示。求指导。

Extjs加载动态加载js文件

我有2个js文件一个在index.html通过script加载另外一个js需要通过第一个js里面的button点击加载。如何加载?有源码吗?关闭之后如何清除之前加载的js

关于Extjs4.2 tree异步加载的问题

在工作上遇到一个数据量毕竟的大的数据源大概有1w5左右。要把它加载到extjs的中tree中 怎么使用异步加载。求大神赐教。下面是代码 ![![图片说明](https://img-ask.csdn.net/upload/201701/11/1484121645_658285.png)图片说明](https://img-ask.csdn.net/upload/201701/11/1484121640_45820.png)

extjs嵌入的echarts通过后台链接数据库动态赋值?

我是java+mysql的,现在echarts静态的值可以显示出来,就是不知道怎么动态的代入值进去,我现在是要做一个通过日期去统计用户注册数量的折线图,求各位大神讲解,最好能附上代码

Extjs4.2 treePanel异步加载子节点时,数据错乱问题~~~~(>_<)~~~~

刚开始加载时还正常,是这样子的:![图片说明](https://img-ask.csdn.net/upload/201703/29/1490750271_133025.jpg) 但当我展开展开节点时,显示数据就出现问题了:![图片说明](https://img-ask.csdn.net/upload/201703/29/1490750362_368514.jpg) 后台返回的明明是两条数据,为什么显示时总会多显示最后一条数据???而且因为这里数据出现错乱,后面的节点也展不开了~~~~(>_<)~~~~ 下面是我的代码: var store = Ext.create('Ext.data.TreeStore', { nodeParam: 'equipmentTypeId', //向服务端发送结点的名称,默认为node defaultRootId: '', //向服务端发送root结点的值 proxy: { type : 'ajax', url : '${pageContext.request.contextPath}/equipment', reader : { type : 'json' } } }); Ext.create('Ext.tree.Panel', { title: 'Simple Tree', width: 200, margin: 5, collapsible: true, singleExpand: true, rootVisible: false, store: store, renderTo: Ext.getBody() });

extjs combo下拉框 下拉显示的部分 背景色自己变成了透明色

![图片说明](https://img-ask.csdn.net/upload/201708/18/1503034704_170365.png) 之前不是这样的,后面不知道为什么就变成了透明色!! 求大神解答!!!

关于Extjs中使用loadRecord加载选择行至form表单中

handler:function(btn){ var win = new Ext.create("Ext.window.Window", { title: "用户详细信息", modal:true, width: 600, height: 400, items: { xtype: "form", margin: 5, border: false, fieldDefaults: { labelAlign: 'left', labelWidth: 60 }, items:[ {xtype:'textfield',fieldLabel:'账户',name:'userId'}, {xtype:'textfield',fieldLabel:'户名',name:'user'}, {xtype:'textfield',fieldLabel:'开户网点',name:'place'} ] } }); var grid = btn.findParentByType('grid'); var record = grid.getSelectionModel().getSelection(); win.down("form").loadRecord(record); win.show() 点击查看按钮,会弹出form表单,内容是对应的grid选中的内容,可能这段代码写的有问题,可不知道问题出在哪里,控制台报的错是:**Uncaught TypeError: record.getData is not a function**。在线请求指点,多谢大神!

EXTJS前台请求数据,后台有返回,但是load方法加载不出数据,且store中数据为空,求助

``` var btnSearch = Ext.create('Ext.Button', { text: '查询', id: 'btnSearch', iconCls: 'unknown-button', style: 'border:solid 1px gray;height:30px;width:60px;', textAlign: 'center', handler: function () { treeStore1.clearData(); var SNNo = Ext.getCmp("SNNo").value; var MaterialBatch = Ext.getCmp("MaterialBatch").value; var ProductionBillNo = Ext.getCmp("ProductionBillNo").value; var TransferCard = Ext.getCmp("TransferCard").value; var $url = 'Tracing.ashx?action=QueryRoot'; var $params = { snno: SNNo, materialbatch: MaterialBatch, productbillno: ProductionBillNo, transfercard: TransferCard }; //treeStore1.proxy.params = $params; treeStore1.load({ params: $params }); ``` ``` } }); ``` var treeStore1 = Ext.create('Ext.data.TreeStore', { id: 'treestore1', pageSize: 50, autoLoad: false, proxy: { type: 'ajax', url: 'Tracing.ashx?action=QueryRoot', async: false, } }); var Billtree = Ext.create('Ext.tree.Panel', { id: 'Billtree', title: "生产流程信息", textAlign: 'center', collapsible: false, rootVisible: false,//是否显示根节点 leaf:false, displayField: 'value', valueField: 'uid', store: treeStore1, listeners: { itemclick: function () { } }, columns: [ { xtype: 'treecolumn', header: '生产用料信息', dataIndex: 'value', sortable: false, width:480 } ] });

extjs5 统计图表加载不出来,空白页面

调试没报错,有警告[W] [Ext.define] Duplicate class name 'Ext.chart.CartesianChart' specified, must be a non-empty string <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <!-- extjs --> <link rel="stylesheet" type="text/css" href="~/Scripts/extjs/packages/ext-theme-classic/build/resources/ext-theme-classic-all.css"> <script type="text/javascript" src="~/Scripts/extjs/ext-all.js"></script> <script type="text/javascript" src="~/Scripts/extjs/packages/ext-theme-classic/build/ext-theme-classic.js"></script> <script type="text/javascript" src="../Scripts/extjs/packages/sencha-charts/build/sencha-charts.js"></script> <script type="text/javascript" src="../Scripts/extjs/packages/sencha-charts/build/sencha-charts-debug.js"></script> <script type="text/javascript" src="../Scripts/extjs/packages/ext-locale/build/ext-locale-zh_CN.js"></script> </head> <body> <script type="text/javascript"> Ext.application({ launch: function () { Ext.create('Ext.Container', { //renderTo: Ext.getBody(), requires: ["sencha-charts"], width: 600, height: 400, layout: 'fit', items: { xtype: 'cartesian', store: { fields: ['name', 'data1', 'data2', 'data3', 'data4', 'data5'], data: [ { 'name': 'metric one', 'data1': 10, 'data2': 12, 'data3': 14, 'data4': 8, 'data5': 13 }, { 'name': 'metric two', 'data1': 7, 'data2': 8, 'data3': 16, 'data4': 10, 'data5': 3 }, { 'name': 'metric three', 'data1': 5, 'data2': 2, 'data3': 14, 'data4': 12, 'data5': 7 }, { 'name': 'metric four', 'data1': 2, 'data2': 14, 'data3': 6, 'data4': 1, 'data5': 23 }, { 'name': 'metric five', 'data1': 27, 'data2': 38, 'data3': 36, 'data4': 13, 'data5': 33 } ] }, axes: [{ type: 'numeric', position: 'left', fields: ['data1'], title: { text: 'Sample Values', fontSize: 15 }, grid: true, minimum: 0 }, { type: 'category', position: 'bottom', fields: ['name'], }], series: { type: 'scatter', fill: true, xField: 'name', yField: 'data3', } } }); } }); </script> </body> </html>

2019 Python开发者日-培训

2019 Python开发者日-培训

150讲轻松搞定Python网络爬虫

150讲轻松搞定Python网络爬虫

设计模式(JAVA语言实现)--20种设计模式附带源码

设计模式(JAVA语言实现)--20种设计模式附带源码

YOLOv3目标检测实战:训练自己的数据集

YOLOv3目标检测实战:训练自己的数据集

java后台+微信小程序 实现完整的点餐系统

java后台+微信小程序 实现完整的点餐系统

三个项目玩转深度学习(附1G源码)

三个项目玩转深度学习(附1G源码)

初级玩转Linux+Ubuntu(嵌入式开发基础课程)

初级玩转Linux+Ubuntu(嵌入式开发基础课程)

2019 AI开发者大会

2019 AI开发者大会

玩转Linux:常用命令实例指南

玩转Linux:常用命令实例指南

一学即懂的计算机视觉(第一季)

一学即懂的计算机视觉(第一季)

4小时玩转微信小程序——基础入门与微信支付实战

4小时玩转微信小程序——基础入门与微信支付实战

Git 实用技巧

Git 实用技巧

Python数据清洗实战入门

Python数据清洗实战入门

使用TensorFlow+keras快速构建图像分类模型

使用TensorFlow+keras快速构建图像分类模型

实用主义学Python(小白也容易上手的Python实用案例)

实用主义学Python(小白也容易上手的Python实用案例)

程序员的算法通关课:知己知彼(第一季)

程序员的算法通关课:知己知彼(第一季)

MySQL数据库从入门到实战应用

MySQL数据库从入门到实战应用

机器学习初学者必会的案例精讲

机器学习初学者必会的案例精讲

手把手实现Java图书管理系统(附源码)

手把手实现Java图书管理系统(附源码)

极简JAVA学习营第四期(报名以后加助教微信:eduxy-1)

极简JAVA学习营第四期(报名以后加助教微信:eduxy-1)

.net core快速开发框架

.net core快速开发框架

玩转Python-Python3基础入门

玩转Python-Python3基础入门

Python数据挖掘简易入门

Python数据挖掘简易入门

微信公众平台开发入门

微信公众平台开发入门

程序员的兼职技能课

程序员的兼职技能课

Windows版YOLOv4目标检测实战:训练自己的数据集

Windows版YOLOv4目标检测实战:训练自己的数据集

HoloLens2开发入门教程

HoloLens2开发入门教程

微信小程序开发实战

微信小程序开发实战

Java8零基础入门视频教程

Java8零基础入门视频教程

相关热词 c# 开发接口 c# 中方法上面的限制 c# java 时间戳 c#单元测试入门 c# 数组转化成文本 c#实体类主外键关系设置 c# 子函数 局部 c#窗口位置设置 c# list 查询 c# 事件 执行顺序
立即提问
相关内容推荐