首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > Java Web开发 >

Extjs form 表单数据读取后显示失败,reader,model,该怎么解决

2012-02-27 
Extjs form 表单数据读取后显示失败,reader,model问题如题ext代码如下:JScript codescript typetext/ja

Extjs form 表单数据读取后显示失败,reader,model
问题如题


ext代码如下:

JScript code
<script type="text/javascript">Ext.require([    'Ext.form.*',    'Ext.data.*']);Ext.onReady(function(){            var app = new bb.SouthCenter();    });    Ext.define('bb.SouthCenter',{    extend: 'Ext.form.Panel',    initComponent: function(){//                 Ext.define('bb.formItem',{//在 gridform中使用            extend: 'Ext.data.Model',            fields : [                {name:'SiteID',mapping:'SiteID'}                ,{name:'SiteName',mapping:'SiteName'}            ]        });                Ext.apply(this,{        renderTo: 'form-ct',        frame: true,        title:'XML Form',        width: 340,        bodyPadding: 5,        waitMsgTarget: true,        fieldDefaults: {            labelAlign: 'right',            labelWidth: 85,            msgTarget: 'side'        },        reader : this.creatReader(),        items: [{                    xtype:'textfield',                    fieldLabel: 'SiteID',                    name: 'SiteID'                }, {                    xtype:'textfield',                    fieldLabel: 'SiteName',                    name: 'SiteName'                }],        buttons: [{            text: 'Load',            listeners:{                        scope: this,//范围                        click:this.loadurl                    }            }]        });        this.callParent(arguments);    },    loadurl:function(){        this.getForm().load({            url: '/database/item.txt',            waitMsg: 'Loading...'        });    },    creatReader:function(){        this.Reader=Ext.create('Ext.data.reader.Array', {            model:'bb.formItem',            record : 'items',            implicitIncludes:true       });       return this.Reader;    }    });</script>


json信息如下:
JScript code
{items:{    SiteID:'ID1',    SiteName:'marshalmackes',    }}


可以加载json数据,但是无法显示到表单里。
而且如果不用define封装form.Panel 而直接用var formpanel=Ext.create();的形式数据显示没问题。


[解决办法]
只想说两点:1,json中的根结点名与grid中的root一定要一致的。2,像这种初始化的,一般可先得到grid中的值,在对应window中做初始化赋值。
[解决办法]
向楼主学习!自己的自己来回答,好跟大家分享。把json中的items改成data,ext中的record 也相对应改一下就ok了
估计是ext对于form panel就是只能用这个的。

热点排行