2

私は数時間インターネットをくまなく調べましたが、まだこの単純な例を機能させることができません。誰かが私を助けてくれることを願っています。Javascript を使用して、php ファイルの内容を表示しようとしています。最終的には検索バーに入力された文字に一致する MySql db からのテキスト一致を表示するために使用されるため、表示は頻繁に更新する必要があります (Google の検索バーに似ています)。そのために setinterval を使用しますが、まだそこにいません。私の問題は、javascript/AJAX の経験がほとんどなく、それを機能させることができないことです。私はそれを必要最小限の要求に落とし込みましたが、まだ機能させることができません。何が機能していないかを提案してください:

コンテンツを表示できる index.html は次のとおりです。

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Untitled Document</title>
<script type="text/javascript" src="/js/jquery-1.3.2.min.js"></script>
</head>

<body>

<script type="text/javascript">

$().ready(function() {
$("#dynamic").load("blasty.php");
});

</script>
<div id="dynamic"></div>
</div>
</body>
</html>

blasty.php には以下が含まれます。

<?php
echo "hello cruel world!";
?>

前もって感謝します!

4

3 に答える 3

1

blasty.php ファイルが同じドメインにあることを確認してください。

また、javascript のデバッグを支援するには、Chrome または Firefox で右クリックし、[Inspect Element] に移動します。次に、コンソール ウィンドウに移動すると、ほとんどのエラーが表示されます。

javascript に関するこの youtube ビデオもお勧めします。javasrcipt の落とし穴のギャップを埋めるのに役立ちました。http://www.youtube.com/watch?v=ljNi8nS5TtQ

デバッガーに関するリンクは次のとおりです: https://developers.google.com/chrome-developer-tools/

@Explosion Pills が言ったように、FireFox の Firebug はもう 1 つの優れたオプションです。両方を使用して、javascript のデバッグを支援します。Firebug は、[ネット] タブの下に、バックグラウンドで発生した実際の http リクエストをパラメータ、レスポンス、ヘッダー情報などとともに表示するので便利です。

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title>Untitled Document</title>
    <script type="text/javascript" src="http://code.jquery.com/jquery-1.9.1.min.js"></script>
    </head>
    <body>
    <script type="text/javascript">
    $(document).ready(function() {
        $("#dynamic").load("blasty.php");
    });
    </script>
    <div id="dynamic"></div>
    </div>
    </body>
    </html>
于 2013-02-05T03:39:15.010 に答える
0

$.getの代わりに使用し$.loadます。

次のようなことを試してください:

$.get("blasty.php",
      { nbRandom: Math.random() },
      function(data){
        $("#dynamic").html(data);
      });

nbRandomIEでのキャッシュを防ぐためです。

Firebug を使用して、AJAX からの応答があることを確認し、そこから移動します。

于 2013-02-05T03:34:28.120 に答える
0

documentに変数がありません$()

<script type="text/javascript">

$(document).ready(function() {
    $("#dynamic").load("blasty.php");
});

</script>

視覚的にそれが私が見る唯一の問題です。

于 2013-02-05T03:27:52.120 に答える