Visualizzazione dei risultati da 1 a 3 su 3
  1. #1
    Utente di HTML.it
    Registrato dal
    Aug 2008
    Messaggi
    23

    Problema con jQuery ed ajax.

    Ho scritto questo codice per caricare dati in un oggetto da xml tramite l'oggetto ajax di jQuery:

    codice:
     $(document).ready(function()
    {
     var desktop=Desktop("../config/desktop.xml");
    });
    
    //TODO Desktop object
     Desktop=function(xmlConfig){
      var icons=null;
      function loadIcons(xml)
      {
         var foundIcons=new Array();
         //Finds every Icon occurrence into xml config file and loads them as Icon objects into foundIcons collection array
         $(xml).find("Icon").each(function()
         {
            foundIcons.push(Icon($(this)));
         });
         //Load icons into Desktop object's icon array
         icons=foundIcons;
      }
      //Init desktop
      $.ajax({
        type: "GET",
    	url: xmlConfig,
    	dataType: "xml",
    	success: function(xml) { 
    	   loadIcons(xml);
        }
      });
     };
    
    //Icon Object (module pattern model)
    Icon=function(iconXMLEntry){
      var id=iconXMLEntry.attr('id');
      var title=iconXMLEntry.find('title').text();
      var image=iconXMLEntry.find('image').text();
      var position=iconXMLEntry.find('position').text();
      alert(title);
    }
    Di seguito l'xml che ho tentato di fornirgli:
    codice:
      <?xml version="1.0" encoding="utf-8" ?>
    <Icons>
     <Icon id="01">
       <title>Scrum Sprinter</title>
       <image>scrum.png</image> 
       <position>20,30</position>
     </Icon>
     <Icon id="02">
       <title>Stick it!</title>
       <image>stickit.png</image> 
       <position>20,90</position>
     </Icon>
     <Icon id="03">
       <title>Net paper</title>
       <image>netpaper.png</image> 
       <position>20,150</position>
     </Icon>
     <Icon id="04">
       <title>Net Documents</title>
       <image>netdocuments.png</image> 
       <position>20,210</position>
     </Icon>
    </Icons>
    Sostanzialmente per ogni oggetti Icon mi legge dall'xml soltanto l'id e non vede gli altri valori.
    Non credo sia un problema di scope perchè il metodo .attr() per l'id viene chiamato correttamente.
    Chi saprebbe aituarmi.

    Il progetto è hostato su google code ed è open source:
    jsCommonWorkspace

  2. #2
    Utente di HTML.it L'avatar di m4rko80
    Registrato dal
    Aug 2008
    residenza
    Milano
    Messaggi
    2,655
    Ciao, ho provato per curiosita' .... mi son copiato il tuo xml e l'ho messo pero' allo stesso livello di index.php(mio file principale dove includo tutto)

    Ho modficicato giusto2 cose per comodità e cosi' nel mio alert vedo tutti i valori (title image e position)

    codice:
     $(document).ready(function()
    {
     var desktop=Desktop("test.xml");
    });
    
    //TODO Desktop object
     Desktop=function(){
      var icons=null;
      function loadIcons(xml)
      {
         var foundIcons=new Array();
         //Finds every Icon occurrence into xml config file and loads them as Icon objects into foundIcons collection array
         $(xml).find("Icon").each(function()
         {
            foundIcons.push(Icon($(this)));
         });
         //Load icons into Desktop object's icon array
         icons=foundIcons;
      }
      //Init desktop
      $.ajax({
        type: "GET",
    	url: 'test.xml',
    	dataType: "xml",
    	success: function(xml) { 
    	   loadIcons(xml);
        }
      });
     };
    
    //Icon Object (module pattern model)
    Icon=function(iconXMLEntry){
      var id=iconXMLEntry.attr('id');
      var title=iconXMLEntry.find('title').text();
      var image=iconXMLEntry.find('image').text();
      var position=iconXMLEntry.find('position').text();
      alert(title+ ' '+image+ ' '+position);
      
    }

  3. #3
    Utente di HTML.it
    Registrato dal
    Aug 2008
    Messaggi
    23

    risolto!

    Funzionava era solo un problema di caching su apache.
    Mi aveva cachato un vecchio xml scorretto.

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.