0

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>
4

2 に答える 2

3

myXml('SYD','Bali')undefined関数本体には何も返さないため、callはを返します。それで

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

印刷します"undefined"。上記のコードを次のように置き換えてください。

myXml('SYD','Bali');
于 2012-04-14T10:48:49.067 に答える
1

エンジニアが正しいか、myXml関数から値を返す方がよいでしょう。

そのため、document.write(undefined)は発生せず、上記のエラーが発生しない可能性があります。

于 2012-04-14T10:52:19.283 に答える