2012-04-03 10 views
0

ajaxを使用してHTMLの一部を読み込み中です。ロードが完了したら、特定のIDのdivのレスポンスを検索したいと思います。基本的にはresponse.getElementByIdとしたいと思います。JS HTMLスニペットでgetElementByIdを取得する方法

これを行う方法はありますか?

+0

--jQuery--
開か<div id=AjaxResponse> </div> を残す成功に$("#AjaxResponse").html(data) を追加しuは、通常使用することができますgetElementById()$("#AjaxResponse#myId") しかし、いけない、不可視設定するのを忘れ、または有効=「false」にどのようにあなたのスニペットを取得しますか? – rekire

+0

@rekire今はjQuery.getメソッドを使用しています。 – silkAdmin

答えて

1

$.get({ 
    url: url, 
    success: function(response) { 
     result = $(response).find("#result"); 
     if (result) { 
      // found 
     } else { 
      //not found 
     } 
    } 
}); 

これはUがdiv要素またはフレームとしてそれをHTML応答を追加することができますresponse

+0

はい、このコードは別のライブラリにprotedされる可能性がありますので、私はその例ではjqueryを使用していますが、私は非Jqueryの方法を見つけるために飛び跳ねていました。 – silkAdmin

+0

@silkAdmin 'find()'のソースはこちら - > http://james.padolsey.com/jquery/#v=git&fn=jQuery.find – ManseUK

0

私はjQueryを介して負荷()メソッドを示唆している:

$(function(){ 
    $('#container_id').load('my_file.html #id_of_div'); 
}); 

その他のドキュメント:jQuery load() AJA(x)の要求に依存

0

。 XMLを読み込む場合は、xhr.responseXMLドキュメントのgetElementByIdメソッドを直接使用できます。

そうでない場合は、HTMLスニペットを解析する必要があります。これはDOMParser、要素のinnerHTML、または好きなライブラリのパーサー関数を使って行うことができます。

あなたがこれを行うことができます
0

resultid#)を検索するために.find()を使用し、しばらくそれを見えないようにしてください。その後、通常のgetElementByIdを使用できます。より速い方法はjQueryを使うことです。上記のdiv

関連する問題