我从XML获取数据。我可以从XML成功地获取价格,但是当我使用下面给出的函数时,会出现一个意外错误,即undefined。

<html>
  <head>
    <script type="text/javascript">
      function myXml(origin, destination) {
        var x=xmlDoc.getElementsByTagName("flights");

        for(i=0;i<x.length;i++) {
          if(x[i].getAttribute('FrTLAs')==origin && x[i].getAttribute('destination')==destination) {
            document.write(x[i].getAttribute('price'))
          }
        }
      }
    </script>
  </head>
  <body>
    <script type="text/javascript">
      document.write(myXml('SYD','Bali'));
    </script>
  </body>
</html>

最佳答案

myXml('SYD','Bali')调用将返回undefined,因为您不会在函数主体中返回任何内容。所以

document.write(myXml('SYD','Bali'));


将打印"undefined"。只需将上面的代码替换为:

myXml('SYD','Bali');

10-08 19:12