ExtJS XML Reader无法加载数据

时间:2013-06-11 05:25:14

标签: extjs extjs3 xmlreader

我的代码没有显示任何错误,我的php文件也响应(firebug报告)。但网格没有显示任何数据。我试图从http://dev.sencha.com/deploy/ext-3.4.0/examples/feed-viewer/view.html获得帮助但却无法理解!我的想法是提供一个rss feed url来编程,它应该从该url获取数据然后php文件以正确的xml格式排列它,就像ExtJS示例(从上面的链接),到目前为止,程序工作正常,firebug说响应是一个xml,但现在,它没有加载。 代码:

var remoteProxy = new Ext.data.HttpProxy({
        url : 'feed-proxy.php'
    });
var store = new Ext.data.Store({
        proxy : remoteProxy,
        id : 'ourRemoteStore',
        reader : new Ext.data.XmlReader({
                    record : 'item'
                }, [{
                            name : 'title',
                            mapping : 'title'
                        }])
    });
loadFeed = function(url) {
store.baseParams = {
    feed : url
};
store.load();
console.log(store.getCount());
}
loadFeed('http://sports.yahoo.com/nba/rss.xml');

var mWIn = new Ext.Window({
        title : 'My Window',
        width : 500,
        height : 400,
        layout : 'fit',
        items : [{
                    xtype : 'grid',
                    store : store,
                    id : 'myGrid',
                    loadMask : true,
                    columns : [{
                                id : 'title',
                                header : "Title",
                                dataIndex :'title',
                                sortable : true,
                                width : 420
                            }]

                }]
    }).show();
    Ext.getCmp('myGrid').ownerCt.doLayout();

和php文件代码是:

 <?php
 // this is an example server-side proxy to load feeds
 if(isset($_REQUEST['feed'])){
 $feed = $_REQUEST['feed'];
 if($feed != '' && strpos($feed, 'http') === 0){
header('Content-Type: text/xml');
$xml = file_get_contents($feed);
$xml = str_replace('<content:encoded>', '<content>', $xml);
$xml = str_replace('</content:encoded>', '</content>', $xml);
$xml = str_replace('</dc:creator>', '</author>', $xml);
echo str_replace('<dc:creator', '<author', $xml);
return;
 }
 }
 ?>

0 个答案:

没有答案