2011-10-26 38 views
0

JsonDaten的加載不起作用。它只是顯示加載通知Sencha Toch MVC - scripttag代理 - 無盡加載

Model.js:

ps.models.Event = Ext.regModel("ps.models.Event", { 
    fields: [ 
     {name: "id", type: "int"}, 
     {name: "date", type: "string"}, 
     {name: "kat", type: "string"}, 
     {name: "name", type: "string"}, 
     {name: "location", type: "string"}, 
    ] 
}); 

ps.stores.event = new Ext.data.Store({ 
    model: "ps.models.Event", 
    proxy: { 
     type: 'scripttag', 
     url: 'http://www.asfdasdf.com/eventkalender/eventlist/format/json', 
     reader: { 
      type: 'json' 
     } 
    }, 
    autoLoad: true 
}); 

View.js:

items: [{ 
    xtype: 'list', 
    emptyText: 'Keine Events verfügbar', 
    itemTpl: '{name}', 
    //grouped: true, 
    scroll: 'vertical', 
    fullscreen: true, 
    store: ps.stores.event 
} 

的哪些錯誤?

謝謝你的支持!

回答

0

這大概是因爲不正確的JSON格式(你可以通過按Ctrl + Shift + J在Chrome中檢查錯誤) 儘量遵循本教程的http://www.sencha.com/learn/legacy/Tutorial:Creating_JSON_Data_in_PHP

UPDATE

您需要添加root:'events'到你代理的讀者:

ps.stores.event = new Ext.data.Store({ 
    model: "ps.models.Event", 
    proxy: { 
     type: 'scripttag', 
     url: 'http://www.asfdasdf.com/eventkalender/eventlist/format/json', 
     reader: { 
      type: 'json', 
      root: 'events' 
     } 
    }, 
    autoLoad: true 
}); 
+0

我查過了。沒有錯誤。 – user1015328

+0

在那JSON語法響應: { 「事件」:[{ 「ID」:4, 「日期」: 「2011-10-28 00:00:00」, 「吉」:「黨 「 」名「: 」Testevent 1「, 」位置「: 」ASDF/ASDF「 },{ 」ID「:5, 」日期「:」 2011-10-29 00:00: 00" , 「吉」: 「Discothek」, 「名」: 「Testevent 2」, 「位置」: 「ASDF/ASF」 } ] } – user1015328

+0

看到我更新的帖子 –

0

您可能還需要考慮到的任何錯誤和超時與以下:

ps.stores.event = new Ext.data.Store({ 
    model: "ps.models.Event", 
    proxy: { 
     type: 'scripttag', 
     url: 'http://www.asfdasdf.com/eventkalender/eventlist/format/json', 
     reader: { 
      type: 'json', 
      root: 'events' 
     }, 
     timeout: 3000, //milliseconds 
     listeners: { 
      exception:function(proxy, response){ 
       console.error(response.responseText); 
      } 
     } 
    }, 
    autoLoad: true 
});