2012-04-19 15 views
16

Sto cercando di analizzare i seguenti tipi di XML (dati da getMembers.php):AJAX/Jquery XML analizzano

<?xml version="1.0" encoding="ISO-8859-1"?> 
<members> 
    <id>3422345</id> 
    <name>Bill Gates</name> 
    <id>232311</id> 
    <name>Bob Barker</name> 
</members> 

e sto usando questo codice qui sotto per analizzare che:

<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"></script> 
    <script type="text/javascript"> 
    $(document).ready(function() { 
     $.ajax({ 
      type: "GET", 
      url: "getMembers.php", 
      cache: false, 
      dataType: "xml", 
      success: function(xml) { 
       $(xml).find('members').each(function(){ 
        var name = $(this).find("name").text() 
        alert(name); 
       }); 
      } 
     }); 
    }); 
</script> 

Nessun errore, ma sto ottenendo entrambi i nomi, allo stesso tempo ..

come:

Bill Barker GatesBob < ciclo --first>

Invece di

Bill Gates < ciclo --first>

Bob Barker < ciclo --second>

Qualsiasi aiuto sarebbe fantastico!

David

+0

è che un errore di battitura: ? – fmgp

+0

Oops mi dispiace. È stato corretto – StealthRT

risposta

30

penso di eseguire iterazioni su membri, non i nomi:

success: function(xml) { 
       $(xml).find('members').each(function(){ 
        $(this).find("name").each(function(){ 
         var name = $(this).text(); 
         alert(name); 
        }); 
       }); 
      } 

o forse il tuo XML dovrebbe assomiglia:

<members> 
    <id>3422345</id> 
    <name>Bill Gates</name> 
</members> 
<members> 
    <id>232311</id> 
    <name>Bob Barker</name> 
</members> 
+0

Era così. Grazie fmgp! : O) – StealthRT

1

questo modo mostrano nomi:

<script type="text/javascript"> 
$(document).ready(function() { 
    $.ajax({ 
     type: "GET", 
     url: "getMembers.php", 
     cache: false, 
     dataType: "xml", 
     success: function(xml) { 
      $(xml).find('name').each(function(){ 
         var name = $(this).text(); 
         alert(name); 
      }); 
     } 
    }); 
}); 

0

Basta chiedersi se sono stati analizzati correttamente i dati XML.

Il formato XML valido è seguito:

<?xml version="1.0" encoding="ISO-8859-1"?> 
<members> 
    <member> 
    <id>3422345</id> 
    <name>Bill Gates</name> 
    </member> 
    <member> 
    <id>232311</id> 
    <name>Bob Barker</name> 
</member> 
</members> 
Problemi correlati