0

いくつかのテーブルを含む外部 HTML ファイル「mainstatus.htm」があります。jQuery .load() 関数を使用して、ファイルの内容を ID "result" の div にロードします。ここで、メイン テーブル内の 2 番目のテーブルの一部の TD が特定のデータを保持しているかどうかを確認したいと思います。しかし、以下の方法を使用して、ロードされたファイルのコンテンツにアクセスできないようです。

$('#result').load('http://localhost/mainstatus.htm', function() {
});
alert($("#result table:nth-child(2) tr:nth-child(1) td:nth-child(2)").val());

これは「未定義」を警告します! どの点が欠けているのか、正しいアプローチは何ですか?

4

1 に答える 1

2

アラートをコールバック内に配置する必要があります

$('#result').load('http://localhost/mainstatus.htm', function() {
  alert($("#result table:nth-child(2) tr:nth-child(1) td:nth-child(2)").text());
});

ロードは非同期であるため、データがロードされる前にアラートが実行されました。使用する前にデータがロードされるのを待つ必要があるため、コールバック関数が存在します。

もう 1 つ:.val()のコンテンツを取得するために を使用していました。またはtdを使用する必要があります。.text().html()

于 2013-06-23T11:00:04.777 に答える