1

私はjQueryを初めて使用します。このコードを使用しましたが、機能しません:

<script type="text/javascript" src="jquery.js" ></script>
<script>
    $(document).ready(function(){
        $("#add_cl").click(function(){
            $("#formtag").load("main.php");
        });
    });
</script>  

ajaxのようにロードしid="add_cl"たいボタンをクリックすると。クリックすると、Dreamweaver ではライブビューでページが表示されますが、Chrome と Firefox では表示されません。main.php#formtagmain.php

4

3 に答える 3

1
  • Chromeを使用していると思います。これをローカルで機能させるには、Xampp などのローカル サーバーを使用する必要があります。または、オンライン サーバーにアップロードしてテストします。動作するはずです!
  • localhosttry を使用する代わりに:127.0.0.1
  • Chrome は、同じオリジン ポリシーまたはそれに関連する何らかの理由で AJAX を使用してバグと闘っています。そのため、怒らずに他のブラウザーを使用してください。PS: 私は XAMPP と Chrome を使用していますが、AJAX は非常にうまく機能します。それが役に立てば幸い

あなたのコメントに関連して:
同じ要素内に異なるページをロードするには、data属性を使用して URL を保存してみてください:

<button class="loader" data-loadpage="main.php"> Load main.php </button>
<button class="loader" data-loadpage="about.php"> Load about.php </button>
<button class="loader" data-loadpage="contact.php"> Load contact.php </button>
$(document).ready(function(){
    $(".loader").click(function(){
        $("#formtag").load( $(this).data('loadpage') );
    });
});

.empty()さらに、古いコンテンツを から削除することもできます#formtag:
$("#formtag").empty().load( $(this).data('loadpage') );

于 2012-09-16T19:19:00.893 に答える
0

http://jsfiddle.net/bozdoz/uZ5XS/

HTML:

<span id="load">Click to Load content</span>
<div id="test"></div>
<div id="loadingGif">LOADING GIF!!!!</div>​

脚本:

$('#load').click(function() {
    $('#test').html('');
    $('#loadingGif').show();
    $('#test').load('http://fiddle.jshell.net/bozdoz/2XgVd/show/ a', function() {
        $('#loadingGif').hide();
    });
});​
于 2012-09-16T19:24:23.063 に答える
0

コールバック関数

"complete" コールバックが提供されている場合は、後処理と HTML 挿入が実行された後に実行されます。コールバックは、jQuery コレクション内の各要素に対して 1 回発生し、これが各 DOM 要素に順番に設定されます。

<script type="text/javascript" src="jquery.js" ></script>
<script>
    $(document).ready(function() {
        $("#add_cl").click(function() {
            $("#formtag").load("main.php", function(response, status, xhr) {
                if (status == "error") {
                    var msg = "Sorry but there was an error: ";
                    alert(msg + xhr.status + " " + xhr.statusText);
                }
            });
        });
    });​
</script> 

また、ブラウザでテストしているときに、「main.php」がまだこのページの html と同じフォルダにあることを確認してください。また、コールバック関数を追加してサーバーの応答をログに記録することで、ajax エラーをチェックできます。

于 2012-09-16T19:35:04.330 に答える