2012-02-04 97 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