0

Extjs グリッドに表示される日付フィールドに問題があります。私はphpを使用してクエリを実行し、データをjson形式で返します。データベースは SQL Server です。日付は次のように json ファイルに返されます: "TERMDATE":{"date":"2013-02-13 00:00:00","timezone_type":3,"timezone":"America/New_York"}

これは単なる日付フィールドです。行には他のフィールドがあり、それらはすべて適切に表示されます。日付を表示したいだけです.phpファイルで何かをしている必要がありますか、送信されているものから日付を引き出​​す方法があります. グリッドが更新されると、日付フィールドは [オブジェクト オブジェクト] として表示されます。

これが私のSQLステートメントです:

SELECT CPK_USERS, FNAME, LNAME, STATUS, DEPARTMENT, Email, PHONE1, CellPhone, Work_Ext,   HIREDATE, SUPERVISOR, TERMDATE FROM USERS where DELFLAG = 0 and CPK_USERS > 0 order by FNAME

以下は、json 形式で返される最初のレコードです。

{"succuss":true,"data":[{"CPK_USERS":153,"FNAME":"Aaron","LNAME":"Booth","STATUS":"Out","DEPARTMENT":"Customer Support","Email":"aaron.booth@xxxxx.com","PHONE1":"2134354709","CellPhone":"6357662738","Work_Ext":"550","HIREDATE":{"date":"2008-06-09 00:00:00","timezone_type":3,"timezone":"America\/New_York"},"SUPERVISOR":"","TERMDATE":{"date":"2013-02-13 00:00:00","timezone_type":3,"timezone":"America\/New_York"}},

私のモデル:

Ext.define('DHS.model.dhsusers.User', {
    extend: 'Ext.data.Model',
    fields: [
        { name: 'CPK_USERS' },
        { name: 'FNAME' },
        { name: 'LNAME' },
        { name: 'STATUS' },
        { name: 'DEPARTMENT' },
        { name: 'Email' },
        { name: 'PHONE1' },
        { name: 'CellPhone' },
        { name: 'Work_Ext' },
        { name: 'HIREDATE' },
        { name: 'SUPERVISOR' },
        { name: 'TERMDATE' }
    ]
});

私の見解:

Ext.define('DHS.view.dhsusers.UserInfoList', {
    extend: 'Ext.grid.Panel',
    alias: 'widget.userinfolist',
    frame: true,
    store: Ext.create('DHS.store.dhsusers.UserInfo'),
    columns:[
        {text:"CPK_Users", dataIndex:'CPK_USERS', flex:1, hidden: true, hideable: false},
        {text:"First Name", dataIndex:'FNAME', flex:1},
        {text:"Last Name", dataIndex:'LNAME', flex:1},
        {text:"Term Date", dataIndex:'TERMDATE', flex:1, type:'datecolumn'},
        {text:"Email", dataIndex:'Email', flex:1},
        {text:"Home Phone", dataIndex:'PHONE1', flex:1},
        {text:"Cell", dataIndex:'CellPhone', flex:1},
        {text:"Work Ext", dataIndex:'Work_Ext', flex:1}
    ]
});
4

1 に答える 1

0

TERMDATE をグリッド列として使用していると思います.TERMDATE.dateを(理論的に)使用すると、正しい表示が得られます。しかし、extjs コードを共有すれば、より良いものになります。

于 2013-05-20T05:19:04.197 に答える