0

私は次のようなものを持っています:

    $.ajax({
        url: "info.html?" + $(this).attr('id'),
        cache: false,
        success: function(html){
            $('#list-content').load("info.html?" + $(this).attr('id'));
        }
    })

info.html で、document.href を取得して解析しようとすると、info.html を取得できませんか?...代わりに、index.html を含むウィンドウの URL を取得します。質問、「info.html」の末尾にあるデータを取得するにはどうすればよいですか? これは良い習慣ですか?他にどのようにデータを渡すことができ、ドキュメントの準備が整ったときに info.html からデータを取得するにはどうすればよいですか?

もう 1 つの質問ですが、読み込んだ後に info.html 内の要素にアクセスする方法はありますか?

前もって感謝します。

4

2 に答える 2

1

これはあなたが望むもののようなものだと思います:

    $.ajax({
      url: "info.html",
      data: {
        id:$(this).attr('id')
      },
      cache: false,
      success: function(html){
          $('#list-content').html(data);
      }
    })

私があなたを正しく理解していれば、あなたは現在 index.html にいて、info.html を取得して div に入れたいですか? もしそうなら、これはあなたがそれを行う方法です。

ただし、URLにGETパラメーターを配置している理由は完全にはわかりません。ajax 関数には、GET 文字列を自動的に作成する data パラメータがあります。それが必要な場合は、例に入れます。


以下の質問への回答:

サーバー側の言語を使用したい場合は、php が一般的な選択肢です。そのため、ファイルの名前を info.php に変更することを検討することをお勧めします (心配する必要はありません。html で埋められていても問題ありません)。次に、php の GET パラメータにアクセスできるようになります。次のようなことができます。

<?php
$id=isset($_GET['id']) ? $_GET['id'] : null;
?>

そこから、$id で好きなことをしたり、エコーしたり、db クエリで使用したりできます。

于 2011-10-05T19:14:24.427 に答える
0

これは、ajax リクエストがサーバーによって処理され、クライアント側にある index.html 内にいるためです。$_GETロードのデフォルトの方法である in php を介してそれらにアクセスできます。info.html のデータへのアクセスに関しては、ロード後にコールバック関数で簡単に実行できます。

$('#list-content').load("info.html?" + $(this).attr('id'), function() {
     // js stuff here
});
于 2011-10-05T19:16:01.180 に答える