2013-07-08 5 views
0

안녕하세요 저는 sencha로 모바일 애플리케이션을 개발하는 데있어 새로운 기술입니다. 나는 내가 여기에 게시하기 전에 구글을 연구했지만 어떤 해결책도 찾지 못했습니다. 나는 내 코드 내가 잘못하고있는 무슨Ext.data.Store 내의 XML에서 데이터를 가져 오는 방법

Ext.regModel('test', { 
      fields: [{ 
         name: 'image', 
         type: 'string' 
         }, { 
         name: 'name', 
         type: 'string' 
         }, { 
         name: 'small_desciption', 
         type: 'string' 
         }, { 
         name: 'position', 
         type: 'string', 
         }] 
      }); 


ToolbarDemo.views.Testtab = Ext.extend(Ext.Panel, { 
              title: "Test", 
              iconCls: "test", 
              styleHtmlContent: true, 
              style:"background-color:#FFFFFF;",           


             dockedItems: [ 


                 { 
                 xtype: "toolbar", 
                 title: "Test", 
                 items : [ 
                   { xtype : 'spacer' }, 
                   // { xtype : 'spacer' },                
                   ], 

                 }, 

                 ], 
              layout: { 
              type: 'fit' 
              }, 




              initComponent: function() { 

               this.setLoading(true,true); 
              var proxyUrl = 'http://mydomain/newsfeed/' 

              var store = new Ext.data.Store({ 
                      model: 'test', 
                      proxy: { 
                      type: 'ajax', 
                      url: proxyUrl, 
                      reader: { 
                      type: 'xml', 
                      record: 'item', 
                      } 
                      }, 
                      datachanged: function(){ 
                      var items = []; 


                      store.each(function(rec){ 


                         items.push({ 


                            html: [ 
                             '<div class="main"><div class="thumb"><div class="contain">{position}</div><div class="image"><img src="http://mydomain/{image}.jpg" width="280" height="100"></div></div><div class="mainentry"><div class="maintitle">{name}</div><div class="description">{small_desciption}</div></div></div>', 


                             ] 



                            }); 
                         }); 

                      } 




                      }); 
              store.read(); 
              ToolbarDemo.views.Testtab.superclass.initComponent.call(this); 

              } }); 

Ext.reg('testtab', ToolbarDemo.views.Testtab); 

가 여기에 다음과 같은 형식을

<?xml version="1.0" encoding="UTF-8"?> 
<rss 
version="2.0" 
xmlns:content="http://purl.org/rss/1.0/modules/content/" 
xmlns:dc="http://purl.org/dc/elements/1.1/" 
xmlns:atom="http://www.w3.org/2005/Atom" 
xmlns:sy="http://purl.org/rss/1.0/modules/syndication/" 
> 
<channel> 
    <title></title> 
    <link></link> 
    <description></description> 
    <language>en-us</language> 
    <pubDate>Mon, 08 Jul 2013 13:12:39 +0000</pubDate> 
    <lastBuildDate>Mon, 08 Jul 2013 13:12:39 +0000</lastBuildDate> 
    <managingEditor></managingEditor> 
    <item> 
     <position>1</position> 
     <image>img/2.png</image> 
     <name>Sun</name> 
     <small_desciption>dfsfsdfsdf</small_desciption> 
    </item> 

    <item> 
     <position>2</position> 
     <image>img/2.png</image> 
     <name>Hot</name> 
     <small_desciption>fsdfdsfsdf</small_desciption> 
    </item> 
     ........ 
</channel> 
</rss> 

을 가지고있는 XML 데이터를 얻으려고?

는 문자열 형식으로 XML을 얻는 경우에, 당신이 시도 할 수는 ExtJS당신에게

답변

0

감사;

var xmlString = <channel>.....</channel> //Your xml data in string format 
parser = new DOMParser(); 
var xmlData = parser.parseFromString(xmlString.body,"text/xml"); 
var channel = xmlMessage.childNodes[0]; 
if(channel){ 
       var image  = xmlData.getElementsByTagName("image")[0].childNodes[0].nodeValue; 
       var position = xmlData.getElementsByTagName("position")[0].childNodes[0].nodeValue; 
       var name  = xmlData.getElementsByTagName("name")[0].childNodes[0].nodeValue; 
       var small_desciption = xmlData.getElementsByTagName("small_desciption")[0].childNodes[0].nodeValue; 
} 
+0

이 글은 html로 작성 하시겠습니까? 이 예와 같이? http : //www.sencha.com/forum/showthread.php? 140552-Ext.data.Store-and-XML –

+1

@ George, XML 형식의 응답을 받고 구문 분석 할 때 이것을 사용할 수 있습니다 대답은 XML에서 데이터를 가져 오는 것에 대한 아이디어 만 제공합니다. – Dev

관련 문제