【问题标题】:ExtJS Grid displays date column but not the otherExtJS Grid 显示日期列但不显示其他
【发布时间】:2010-07-13 16:09:34
【问题描述】:

我在我的代码中发现问题时遇到了一些麻烦,所以我想尝试寻找第二双眼睛。

代码:

var logStore = new Ext.data.JsonStore({
    autoLoad: true,
    url: 'inc/interface/config.php?list=messages',
    root: 'logs',
    id: 'ID',
    fields: ['ReceivedAt', 'Message']
});

 var logGrid = new Ext.grid.GridPanel({
    region: 'center',
    store: logStore,
    autoWidth: true,
    height: 1000,
    colModel: new Ext.grid.ColumnModel({ 
                columns:[
            {id: 'received', header: 'Received', dataIndex: 'ReceivedAt', width: 250},
                            {id: 'message', header: 'Logs', dataIndex: 'Message', width: 750}  
                    ]
            }),
});


var mainViewport = new Ext.Viewport({
    layout: 'border',
    items:[logGrid, searchPanel]
});

上面的代码是我的界面,虽然我在加载时没有收到任何错误,但我无法将我的数据存储在网格中。我相信我的商店/网格是直接配置的,但这就是我来这里的目的。

以下是我从商店加载我的代码时得到的响应:

{"logs":[
   {"ID":"1","ReceivedAt":"2010-07-07 11:37:42","Message":"Apr 9 00:00:02 dh1 dhcpd: Added new forward map from blahhhhhhh to 10.193.blah.blah"},
   {"ID":"2","ReceivedAt":"2010-07-07 11:37:42","Message":"Apr 9 00:00:02 dh1 dhcpd: added reverse map from 248.240.blah.blah.in-addr.arpa. to blahhhhhhhh"},
   {"ID":"3","ReceivedAt":"2010-07-07 11:37:42","Message":"Apr 9 00:00:02 dh1 dhcpd: DHCPREQUEST for 10.193.blah.blah from aa:bb:cc:dd:ee:ff (blahhhhhh) via 10.193.blah.blah"}
]}

出于明显的原因进行了编辑。

我所做的是取出“日志”并只显示日期,它工作正常;然后我尝试了日志,但失败了。数据存储在mysql中:

4 月 9 日 00:00:02 dh1 dhcpd:添加了从 blah.wifi.blah 到 10.193.blah.blah 的新前向映射

我在想 JS 在解析数据时遇到问题还是什么?大家觉得呢?

感谢您的帮助!

【问题讨论】:

    标签: json extjs parsing grid


    【解决方案1】:

    您确定商店正在加载吗?我刚把它放进去,它就按预期运行了?

    Ext.onReady(function(){
        var logStore = new Ext.data.JsonStore({
            root: 'logs',
            id: 'ID',
            fields: ['ReceivedAt', 'Message'],
            data: {
                "logs": [{
                    "ID": "1",
                    "ReceivedAt": "2010-07-07 11:37:42",
                    "Message": "Apr 9 00:00:02 dh1 dhcpd: Added new forward map from blahhhhhhh to 10.193.blah.blah"
                }, {
                    "ID": "2",
                    "ReceivedAt": "2010-07-07 11:37:42",
                    "Message": "Apr 9 00:00:02 dh1 dhcpd: added reverse map from 248.240.blah.blah.in-addr.arpa. to blahhhhhhhh"
                }, {
                    "ID": "3",
                    "ReceivedAt": "2010-07-07 11:37:42",
                    "Message": "Apr 9 00:00:02 dh1 dhcpd: DHCPREQUEST for 10.193.blah.blah from aa:bb:cc:dd:ee:ff (blahhhhhh) via 10.193.blah.blah"
                }]
            }
        });
    
        var logGrid = new Ext.grid.GridPanel({
            region: 'center',
            store: logStore,
            colModel: new Ext.grid.ColumnModel({
                columns: [{
                    id: 'received',
                    header: 'Received',
                    dataIndex: 'ReceivedAt',
                    width: 250
                }, {
                    id: 'message',
                    header: 'Logs',
                    dataIndex: 'Message',
                    width: 750
                }]
            }),
        });
    
    
        var mainViewport = new Ext.Viewport({
            layout: 'border',
            items: [logGrid]
        });
    
    });
    

    尝试在商店中添加一个加载事件,看看它是否真的被正确加载了。

    【讨论】:

    • 是的,它正在正确加载,因为我可以在 firebug 中看到我的所有信息,而且如果我取出日志,日期会显示得很好......它与那个讨厌的日志有关部分..
    • 我刚刚插入了你所做的并且工作正常......所以我错了,但不确定我应该从哪里开始,因为我对周围的编程还是有点陌生​​。
    猜你喜欢
    • 1970-01-01
    • 2017-11-10
    • 1970-01-01
    • 2013-12-09
    • 2021-09-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多