我尝试解析以下类型的XML(来自 getMembers.php的 数据):
<?xml version="1.0" encoding="ISO-8859-1"?> <members> <id>3422345</id> <name>Bill Gates</name> <id>232311</id> <name>Bob Barker</name> </members>
我使用下面的代码来解析它:
<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>
没错,但我同时获得了两个名字。
喜欢:
比尔·盖茨鲍勃·巴克<-first loop>
代替
比尔·盖茨<-第一个循环> 鲍勃·巴克<-第二循环>
比尔·盖茨<-第一个循环>
鲍勃·巴克<-第二循环>
任何帮助将是巨大的!
我认为您遍历成员,而不是姓名:
success: function(xml) { $(xml).find('members').each(function(){ $(this).find("name").each(function(){ var name = $(this).text(); alert(name); }); }); }
也许您的XML应该看起来像:
<members> <id>3422345</id> <name>Bill Gates</name> </members> <members> <id>232311</id> <name>Bob Barker</name> </members>