.ajax()不想读取xml数据

时间:2019-01-22 01:43:56

标签: javascript jquery xml

我在htdocs中创建了一个名为tp的文件夹,然后在tp中创建了两个名为balance.html和wrestler.xml的文件。我确保使用localhost / tp / balance.html在浏览器中打开文件并执行xampps程序。但是在balance.html中,.ajax()不想从wrestler.xml中检索数据。

这是我html文件中的代码:

<script src="./jquery-3.3.1.js"></script>
<script>
  $.ajax({
    type: 'get',
    url: 'wrestler.xml',
    dataType: 'xml',
    success: function (xml) {
      console.log(xml);

    },
    error: function () {

      alert("An error occurred while processing XML file.");

    }

  });
</script>
这是我的xml文件:

<?xml version="1.0" encoding="utf-8" ?>
<wrestler> 
<name>Modou</name>
<weight>100</weight>
</wrestler>
<wrestler2> 
<name>Modou</name>
<weight>150</weight>
</wrestler2>
而是从我的xml文件中获取数据,我收到错误消息。处理XML文件时发生错误。

编辑:我还添加了jQuery库文件。

1 个答案:

答案 0 :(得分:0)

XML无效,因为它缺少根节点。

如果在所有摔跤手周围添加一个根节点,该节点将变为有效:

<?xml version="1.0" encoding="utf-8" ?>
<wrestlers>
  <wrestler>
    <name>Modou</name>
    <weight>100</weight>
  </wrestler>
  <wrestler2>
    <name>Modou</name>
    <weight>150</weight>
  </wrestler2>
</wrestlers>

我认为使用递增的标签名称(例如<wrestler2>)也是不寻常的,尽管它是有效的。通常,<wrestlers>的所有子代都是<wrestler>

有许多在线XML验证器,您可以在Google上找到它们。您应该将XML粘贴到其中之一。