0

ページの読み込み時に一部のコンテンツを div に読み込みたいのですが、新しいコンテンツを読み込み、現在 DIV のコンテンツを置き換えるボタンが必要です。

これは私のHTMLです:

<a id="aboutlink" href="#">About</a>
<a id="infolink" href="#">Info</a>
<div id="contentbox">Starting content</div>

これは私のJavascriptです:

$(document).ready(function(){
    $('#aboutlink').click(function(){
        $('#contentbox').load('/includes/about-info.html');
    });
    $('#testlink').click(function(){
        $('#contentbox').load('/includes/test-info.html');
    });
})

http://jsfiddle.net/spadez/GCg4V/1/

サーバーでこれを試したときにコンテンツが読み込まれなかったので、何が間違っているのか疑問に思いました。また、このようなことを達成するためのより良い方法があるかどうかも疑問に思っていました.

あなたが与えることができる助けやアドバイスをありがとう.

4

4 に答える 4

1

このloadメソッドは、ステータスが . の場合、最初に一致した要素の html のみを設定します。または など、(200 OK)これ以外の場合は html を設定しません。(404 Not Found)(403 Forbidden)

応答に関係なく設定するには、私が編集したこのjsFiddleを試してください。

于 2013-06-28T12:18:03.263 に答える
1

まず、次のようにしてみてください。

$.get('/includes/test-info.html', data, function(data){alert(data);})

そして、何が返されているかを正確に確認できます。

于 2013-06-28T12:11:53.283 に答える
0

次に、このコードを実行して、そこで何が起こっているかを確認します。

<script src="http://code.jquery.com/jquery-latest.min.js"type="text/javascript"></script>

<script>    
    $(document).ready(function () {
        $('#aboutlink').click(function () {
            $('#contentbox').load('/includes/about-info.html', function(response, status, xhr){
                if (status == "error") {
                    var msg = "Sorry but there was an error: ";
                    $("#error").html(msg + xhr.status + " " + xhr.statusText);
                }
            });
        });
        $('#infolink').click(function () {
            $('#contentbox').load('/includes/test-info.html', function(response, status, xhr){
                if (status == "error") {
                    var msg = "Sorry but there was an error: ";
                    $("#error").html(msg + xhr.status + " " + xhr.statusText);
                }
            });
        });

    })  
</script>
<a id="aboutlink" href="#">About</a>
<a id="infolink" href="#">Info</a>
<div id="contentbox">Starting content</div>
<div id="error"></div>
于 2013-06-28T12:23:40.477 に答える