私は今何が起こっているのか完全に困惑しており、過ぎ去った数週間のうち何度もエラーなしでこれを行ってきたので、信じられないほどイライラしています. しかし、突然、JavaScript を使用して HTML ページに XML データを表示することができなくなりました。説明させてください。
私は Microsoft Visual Studio 2012 Ultimate で作業しています。ここ数週間で、いくつかの Web ページを作成しました (ASP.NET プロジェクトと .html ではなく .aspx ファイルとして)。今回は、.aspx ファイルを作成する代わりに、以下に示す .html ファイルを作成しました。読みやすいように、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")。最終結果は次のようになります。
- 会社 - Google
- 市場 - ナスダック
- セクター - ソフトウェア
- 価格 - $487.80
代わりに、私が得ているのはこれだけです:
- 会社 -
- 市場 -
- セクター -
- 価格 -
私は文字通り、同じループを何十回も使用してきました (変数名を変更するだけで済みます)。素晴らしい結果が得られました。しかし今、奇妙な理由で、このスクリプトは機能していません。面白いのは、XML コンテンツを別の ASPX プロジェクトの別の XML ファイルにコピー アンド ペーストしたことです (もちろん、スクリプト変数名などを少し変更しただけで) XML データは問題なく表示されました...この特定のケースでは機能しないようで、非常にイライラします。関連する XML、HTML、JavaScript のすべてを 4 回近くやり直して書き直しましたが、HTML ページをロードすると、HTML でハードコーディングしたものだけが表示され、XML データは表示されません。スクリプトが実行されていないようです..この html ファイルはルート フォルダにあり、XML ファイルは m からデータを取得しようとしているのは、"stylesheets" という名前のルート フォルダーにあるフォルダーにあります。ファイルの名前は stocks.xml です。したがって、JavaScript に入力したディレクトリは正しいです。
よくわかりません...何が間違っていますか?