2012-02-04 43 views
1

我拥有一个包含JSON类型数据的php变量。EXTJS,如何使用由PHP创建的JSON数据为XTemplate创建数据

$list = [{"id":"10","first_name":"first","mi_name":"","last_name":"last","nick_name":"HH"}]; 

我需要使用EXT-JS XTemplate的日期。

我试过这种方式,

var myStore = <?php echo $list; ?>; 

var myTpl = new Ext.XTemplate(
    "<div style='text-align:center'>", 
    '<tpl for=".">', 
     '<p> No : {#}</p>', 
     '<p>{first_name} {$last Name}</p>', 
    "</tpl>", 
    "</div>", 
    {} 
); 

var myPanel = new Ext.Panel({ 
    border : true, 
    layout : 'fit', 
    pageY : 10, 
    items : new Ext.DataView({ 
     store : myStore, 
     tpl : myTpl, 
     autoHeight : true, 
     emptyText : 'No Data' 
    }) 
}); 

,但它不工作,

也是我尝试这样做,

var myStore = Ext.create('Ext.data.JsonStore', { 
    autoLoad : true, 
    data : <?php echo $list; ?> 
}); 

它也不起作用。

所以我试图使用代理获取数据。

var myStore = new Ext.data.JsonStore({ 
    proxy : new Ext.data.HttpProxy({ 
     url : './index.php?action=getList' //it return same to $list 
    }), 
    fields : [ 
     {name : 'first_name', type : 'string'}, 
    {name : 'last_name', type : 'string'} 
    ], 
    autoLoad : true 
}); 

它的工作原理!

嗯......

所以我的问题是我怎么可以创建JSON类型PHP变量的数据。 (我不想用代理来获取数据,如果可以的话)

帮帮我〜!

回答

1

你的数据视图缺少强制性配置“itemSelector

欲了解更多信息,请阅读煎茶文档Sencha ExtJS 4 dataview