2012-01-28 5 views
1

Ext.Ajax.requestを使用してWebServiceに接続するSenchaタッチコードがありました。 success関数では、レスポンスをリストに表示するか、Storeに格納します。AjaxRequestからの応答をストアに追加する方法、またはリストに表示する方法

どうすればいいですか?以下は私のコードです。

var View = function() { 
     Ext.getBody().mask('Loading...', 'x-mask-loading', false); 
     Ext.Ajax.request({ 
      url: 'URL', 
      method: 'GET', 
      success: function(response, opts) 
      { 
        var obj = Ext.util.JSON.decode(response.responseText); 
        Ext.getCmp('content').update(response.responseText); 
      } 
     }); 
    }; 

答えて

0

その後Agax要求の結果とディレクトリのmystoreストアを記入し、

myStore = new Ext.data.Store({ 
     model: Ext.regModel('', { 

     fields: [ 
      { name: 'id', type: 'int' }, 
      { name: 'name', type: 'string'}, 
          { name: 'age', type: 'string'} 

     ] 

     }) 
    }); 

myList = new Ext.List({ 
     store: myStore, 
     itemTpl: '<div>{name}</div>' +'<div>{age}</div>' 

    }); 

をストア属性を持つExt.Listを作成します。次のようにAJAX呼び出しでONSUCCESSイベントがなければなりません、そして、

var jsonData = Ext.util.JSON.decode(response.responseText); 
myStore.add(jsonData['myresultlist']); 
myStore.sync(); 

{ 
"myresultlist": [ 
    { 
     "id": "1", 
     "name": "anne", 
     "age": "21" 
    }, 
    { 
     "id": "2", 
     "name": "jack", 
     "age": "26" 
    }, 
    { 
     "id": "3", 
     "name": "Tom", 
     "age": "21" 
    } 
], 
"success": "true", 
"info": "My Results List!" 
} 
を次のようにあなたは、サーバー側から有効なJSONを戻ってきていることを確認してください
関連する問題