0

VS 2012 で新しい Razor 2 Web サイトを作成するときに既定で提供されるファイルと同じレベルで、Razor 2 プロジェクトに追加した Platypus.XML という名前の XML ファイルがあります (_AppStart.cshtml、Default.cshtml など)。 )

XML ファイルは整形式のようです (さらに、他の場所で正常に使用されています)。

<?xml version="1.0" encoding="utf-8" standalone="yes" ?>
<Platypi>
  <Platypus>
    <PlatypusNumber>1</PlatypusNumber>
    <LocationNumber>1</LocationNumber>
    <PlatypusName>CCR, Inc. Site 1 Q &amp; A</PlatypusName>
  </Platypus>
. . .
</Platypi>

私はこのhtmlとjQueryを持っています:

. . .
<ol class="round">
    <li class="one">
        <input type="submit" id="submit" value="Get Platypus.XML" />
        <div id="Platypus_Setup"></div>
    </li>

    <li class="two">
        <input type="submit" id="submit2" value="Get Platypus2.XML" />
        <div id="Platypus_Setup2"></div>
    </li>

    <li class="three">
        <input type="submit" id="submit3" value="Get Platypus3.XML"  />
        <div id="Platypus_Setup3"></div>
    </li>
</ol>

    <script>
        $(document).ready(function () {
            $('#submit').click(function () {
                $.ajax({
                    type: "GET",
                    url: "Platypus.XML",
                    dataType: "xml",
                    success: function (PlatypusRec) {
                        var platypusSetup = "<ul>";
                        $(PlatypusRec).find('Platypus').each(function () {
                            var platypusNum = $(this).find('PlatypusNumber').text()
                            platypusSetup += "<li>" + platypusNum + "</li>";
                        });
                        platypusSetup += "</ul>";
                        $('#Platypus_Setup').append(platypusSetup);
                    }
                });
                return false;
            });
        });
    </script>

(これは aPress 本「jQuery Recipes」のレシピ 8-8 から引用したものです)

それでも、「Get Platypus.XML」ボタンを押しても、Platypus_Setup div 要素には何も追加されません。エラーもスローされません。まったく何もしません(私が見ることができます)。

ここで何が欠けていますか?

アップデート

「ファイルを手動でヒットする」というLOUDの提案に応えて:

URL を次のように変更します。

http://localhost:53321/XMLFileViewer/Default.cshtml

に:

http://localhost:53321/XMLFileViewer/PLATYPUS.XML

...XML ファイルが表示されますが、上部にメッセージも表示されます。

この XML ファイルには、スタイル情報が関連付けられていないようです。ドキュメントツリーを以下に示します。

また、「return false;」のすぐ上にエラー コードを追加しました。ライン:

error: function (xhr, status) {
    alert(xhr.status);
}
return false;

...しかし、「ステータス」がグレー表示されているため、それが正しい場所かどうかはわかりません。それを実行し、ボタンを新しい例外ハンドラーでマッシュアップしても、何も違いはありません(アラートボックスは表示されません)...

更新 2

上記の例外ブロックを移動します。

error: function (xhr, status) {
                    alert(xhr.status);
                }
                });
                return false;

...VS2012 で「ステータス」を太字にしましたが、ボタンを押してもエラー メッセージは表示されません。

4

2 に答える 2

0

Resharper、jsFiddle、これらの問題は jsFiddle によって捕捉され、クリック イベントが誤動作する原因になりますか? jQuery をクリーンアップするのに役立ちました。構文が正しくなると、正常に動作します。

$(document).ready(function () {
        $('#submit').click(function () {
            $.ajax({
                type: "GET",
                url: "DuckbillSETUP.XML",
                dataType: "xml",
                success: function (platypusSetupRec) {
                    var platypussetup = "<ul>";
                    $(platypusSetupRec).find('platypus').each(function () {
                        var platypusNum = $(this).find('platypusNumber').text();
                        platypussetup += "<li>" + platypusNum + "</li>";
                    });
                    platypussetup += "</ul>";
                    $('#platypus_Setup').append(platypussetup);
                },
                error: function (xhr, status) {
                    alert(xhr.status);
                }
            });
            return false;
        });
    });
于 2013-04-23T16:18:50.080 に答える