y393791327 2015-04-10 10:25 采纳率: 0%
浏览 2813
已采纳

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);

我换成静态的数据就能加载上去

  • 写回答

2条回答 默认 最新

  • Go 旅城通票 2015-04-10 12:15
    关注

    loadRecord参数时Ext.data.Model的实力,不是store对象,而且store是异步加载的,数据没返回都已经执行myFormPanel.getForm().loadRecord(userRecord);这句了,

    放到store的load事件里面,而且是取里面的记录

                 var storeList = Ext.create('Ext.data.Store', { 
                            load:function(){
                            alert(storeList.getCount())//输出有多少条数据
                            myFormPanel.getForm().loadRecord(storeList.getAt((0));//加载第一条数据
                            },
                model:'taskList',
                proxy: {             
                    type: 'ajax',
                    url: 'taskList.action?task_id='+task_id, 
                    reader: {
                        type: 'json',
                        root: 'taskList'                  
                    }
               }            
            });
    
    

    http://ask.csdn.net/questions/173921,这个里面不是说得很清楚了。。加载远程数据用load就行。。不需要建立个store来加载。

    解决能记得采纳。。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
  • y393791327 2015-04-13 01:17
    关注
     storeList.on("load", function() {  
             myFormPanel.getForm().loadRecord(storeList.getAt(0));               
         });
    

    确实Form加载完成时没用上store里的数据。把它放在Load里就行了

    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥15 相同型号电脑与配置,发现主板有一台貌似缺少了好多元器件似的,会影响稳定性和使用寿命吗?
  • ¥15 要求编写稀疏矩阵A的转置矩阵的算法
  • ¥15 编写满足以下要求的停车场管理程序,设停车场只有一个可停放n辆车的狭窄通道且只有一个大门可供车辆进出。
  • ¥20 powerbulider 导入excel文件,显示不完整
  • ¥15 用keil调试程序保证结果进行led相关闪烁
  • ¥15 paddle训练自己的数据loss降不下去
  • ¥20 用matlab的pdetool解决以下三个问题
  • ¥15 单个福来轮的平衡与侧向滑动是如何做到的?
  • ¥15 嵌入式Linux固件,能直接告诉我crc32校验的区域在哪不,内核的校验我已经找到了,uboot没有
  • ¥20 h3c静态路要求有详细过程