$ .ajax()只获取正文

Gus*_*ooL 4 html ajax jquery

我有这样的脚本

<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<title>Testing Ajax</title>
<script type="text/javascript" src="jquery.js"></script>
</head>
<body>
<a class="test" href="getthis.php">click here</a>
<div class="get"></div>

<script type="text/javascript">
    $('.test').click(function(event){
        event.preventDefault();
        var a = $('body');
        $.ajax({
            url: "/getthis.php",
            dataType: 'text',
            success: function(data){            
                $('.get').append(data.find);
            }
        });
    });
</script>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)

使用此脚本,我尝试获取内容getthis.php

getthis.php只包含这个

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//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></title>
    </head>
    <body>
        Olalalalala bebe
    </body>
    </html>
Run Code Online (Sandbox Code Playgroud)

当我这样做时,我得到结果getthis.php的完整html

我怎么能只获得身体内容?这只是意思."Olalalalala bebe"

有人可以给我解释一下吗?

谢谢...

jkn*_*air 7

使用http://api.jquery.com/load/可以加载特定的页面片段


小智 5

满容易.用另外一层DIV包裹BODY内部会:

$.get(url, {}, function(data){
  var data = data.replace('<body', '<body><div id="body"').replace('</body>','</div></body>');
  var body = $(data).filter('#body');
  //... do what you want with body ...
});
Run Code Online (Sandbox Code Playgroud)