Javascript / ajax拒绝显示XML数据

时间:2013-03-26 22:35:53

标签: javascript xml ajax

我对现在正在发生的事情感到非常难过,这令人非常沮丧,因为我在过去的几周里已经多次没有犯过错误。但突然之间,使用JavaScript在HTML页面中显示XML数据在某种程度上变得不可能。让我解释一下。

我在Microsoft Visual Studio 2012 Ultimate中工作。我在过去几周内创建了几个网页(如ASP.NET项目和.aspx文件而不是.html)。这次,我创建了一个.html文件,而不是创建.aspx文件,您可以在下面看到。请注意我已将CSS和JavaScript内联,因此更容易阅读:

<!DOCTYPE HTML>
<html>
  <head>
    <meta charset="utf-8">

      <style type = "text/css">
         h2 {color:Navy}

         li 
         {    
             font-family : monospace;
             font-weight: bold; 
             color:Navy;
         }

         li:hover {color: red;}
      </style>

      <script type="text/javascript">
          $(document).ready(function () {
              $.ajax({
                  type: "GET",
                  url: "stylesheets/stocks.xml",
                  dataType: "xml",
                  success: function (xml) {
                      $(xml).find('Stock').each(function () {
                          var company = $(this).find('Company').text();
                          var market = $(this).find('Market').text();
                          var sector = $(this).find('Sector').text();
                          var price = $(this).find('Price').text();
                          $("#company").html(company);
                          $("#market").html(market);
                          $("#sector").html(sector);
                          $("#price").html(price);
                          });

                        }
                    });
                });
      </script>
   </head>

   <body onload="onBodyLoad()">
       <h2>List of Stocks:</h2>
      <div id="stockList"> 
          <ul><!--Temporary-->
              <li>BA</li>
              <li>CSCO</li>
              <li>ED</li>
              <li>GOOG</li>
              <li>MO</li>
          </ul><!--temp-->
      </div>
      <div id="stockInfo"> <!--Make a script to Show/Hide this div. Hide on default-->
          <table>
              <tr>
                  <td>1.</td><td>Company - </td><td id="company"></td>
              </tr>
              <tr>
                  <td>2.</td><td>Market - </td><td id="market"></td>
              </tr>
              <tr>
                  <td>3.</td><td>Sector - </td><td id="sector"></td>
              </tr>
              <tr>
                  <td>4.</td><td>Price - </td><td id="price"></td>
              </tr>
          </table>
      </div>
   </body>
</html>

我要做的就是在我提供的表格中显示XML数据。在各自的表格单元格中输出公司的名称,市场,行业和股票价格(ex id =“company”)。最终结果应如下所示:

  1. 公司 - Google
  2. 市场 - 纳斯达克
  3. 部门 - 软件
  4. 价格 - $ 487.80
  5. 相反,我得到的就是:

    1. 公司 -
    2. 市场 -
    3. 部门 -
    4. 价格 -
    5. 我之前几十次使用过相同的循环(只需要修改变量名称,而不是修改变量名称),效果很好。但现在,由于一些奇怪的原因,这个脚本无法正常工作。有趣的是,我已经将XML内容复制并粘贴到另一个ASPX项目中的另一个XML文件中(当然只需对脚本变量名称进行一些修改,但是没有)显示的XML数据就好了...它只是似乎在这个非常令人沮丧的特殊情况下不起作用。我已经重新完成并重写了所有XML,HTML和JavaScript近4次,然而,当我加载HTML页面时,我只是盯着我用HTML编写的硬编码,没有XML数据。这就像脚本甚至没有运行..这个html文件位于根文件夹中,我试图从中获取数据的XML文件位于名为“stylesheets”的根文件夹中的文件夹中。该文件名为stocks.xml。因此,我输入JavaScript的目录是正确的。

      我只是不明白......我做错了什么?

0 个答案:

没有答案