0

Extjs と JSON を使用して残りの Web スクリプトを呼び出していますが、ビューに表示できません。問題は、サーバーからの応答としてjsonデータを取得していることです。しかし、ビューに表示したいときに表示されません。

ここに私のjsonがあります:

{
"data":
{
    "ticket":"TICKET_87c91dd9d18d7242e44ff638df01e0cb388ee4c7"
}
}

ここにextjsコードがあります:

Ext.onReady(function() {

alert("in login js");

var store = new Ext.data.JsonStore({
    proxy : new Ext.data.ScriptTagProxy({

        // url : 'http://ip:8080/alfresco/service/api/login',
        url : 'http://ip:8080/alfresco/service/api/login?u=Value1&pw=Value2&format=json',
        method : 'GET'


    }),

     reader : new Ext.data.JsonReader({ 
                root : 'data', 
                fields : ['ticket']
     })


});

alert("after the webscript call");
//store.load();
 var grid = new Ext.grid.GridPanel({
    renderTo: 'PagingFragment',
    frame:true,
    width:600,
    height:800,
    autoHeight: true,
    autoWidth: true,
    store: store,
    loadMask:true,
    columns: [
    {
        height:100,
        width:100,
        header: "Ticket",
        dataIndex: 'ticket',
       // renderer: title_img,
        //id: 'ticket',
        sortable: true
    }

    ],

    bbar: new Ext.PagingToolbar({
        pageSize: 2,
        store:store,
        displayInfo: true,
        displayMsg: 'Displaying topics {0} - {1} of {2}'

    }),
    sm: new Ext.grid.RowSelectionModel({
        singleSelect: true,
        listeners: {
            rowselect: {
                fn: function(sm,index,record) {
                    Ext.Msg.alert('You Selected',record.data.title);
                }
            }
        }
    })
});
store.load({
    params: {
        start: 0,
        limit: 5
    }
});

});

そしてjspで:

<body>
    <div id="PagingFragment" style="position:absolute;top:10px;left:200px">

    </div>


</body>

誰でもこれを手伝ってもらえますか

4

1 に答える 1

0

'data' は配列でなければなりません。{ data: { ticket: 'blahblahblah' } } の代わりに、 { data: [{ ticket: 'blahblahblah' }] } を返す必要があります。

于 2012-02-29T16:41:39.813 に答える