36

私は jQuery の ajax コードを使用して新しいページをロードしていますが、div の html のみを取得することを望んでいました。

私のコード: HTML:

<body>
    <div id="content"></div>
</body>

脚本:

$.ajax({
   url:href,
   type:'GET',
   success: function(data){
       $('#content').html(data);
   }
});

別のページの $('div#content') の html だけを取得してもらいたかったのです。どうやってするの?

4

5 に答える 5

49

わかりました。html を「構築」して、.content div を見つける必要があります。

このような:

$.ajax({
   url:href,
   type:'GET',
   success: function(data){
       $('#content').html($(data).find('#content').html());
   }
});

単純!

于 2013-09-21T22:47:26.110 に答える
32

JQuery .load() メソッドを使用できます。

http://api.jquery.com/load/

 $( "#content" ).load( "ajax/test.html div#content" );
于 2013-09-22T00:11:20.590 に答える
17

別のドメインからコンテンツを探している場合、これでうまくいきます。

$.ajax({
    url:'http://www.corsproxy.com/' +
        'en.wikipedia.org/wiki/Briarcliff_Manor,_New_York',
        type:'GET',
        success: function(data){
           $('#content').html($(data).find('#firstHeading').html());
        }
});
于 2014-10-19T22:55:44.253 に答える
3
$.ajax({
  url:href,
  type:'get',
  success: function(data){
   console.log($(data)); 
  }
});

このコンソール ログは、オブジェクトのような配列を取得します: [meta, title, ,], 非常に奇妙な

JavaScript を使用できます:</p>

var doc = document.documentElement.cloneNode()
doc.innerHTML = data
$content = $(doc.querySelector('#content'))
于 2016-04-18T13:44:39.680 に答える