Javascript AJAX返回完整的HTML站点,而不是JSON对象

Javascript AJAX返回完整的HTML站点,而不是JSON对象,javascript,php,jquery,ajax,json,Javascript,Php,Jquery,Ajax,Json,我终于可以从我的AJAX PHP调用中收到响应。 但现在作为回报,我得到了完整的HTML站点,而不是JSON对象或字符串。 这里怎么了 var request = $.ajax({ url: "mysite.php", type: "POST", data: {select:requestStr}, dataType: "html" }); request.done(function( data ) { console.log(JSON.stringify(data));

我终于可以从我的AJAX PHP调用中收到响应。 但现在作为回报,我得到了完整的HTML站点,而不是JSON对象或字符串。 这里怎么了

var request = $.ajax({
  url: "mysite.php",
  type: "POST",
  data: {select:requestStr},
  dataType: "html"
});

request.done(function( data ) {
  console.log(JSON.stringify(data));
});
我向我的php类发送一个简单字符串。这是我从浏览器的开发人员工具中的响应文本中得到的:

data=Test
在PHP站点上,我只返回响应:

<?php
    $myData = array();
    $myData['data'] = "test";
    if (isset($_POST)) {
        $myData['data'] = $_POST;
    }
    echo json_encode($myData);
    exit();
?>

这是响应中的console.log:

"<!DOCTYPE html>\r\n<html>\r\n<head> ... </html>\"Test\""
“\r\n\r\n…\“测试”
编辑

我只需要响应的结尾,即
“Test”
,而不是整个HTML文件

更新 我提取了我的PHP类,并编写了一个类似上面PHP代码的小版本。
但是现在我的响应是一个空对象
{“data”:[]}

放置一个
退出()
after
echo json\u encode($myData)

嘿,用type=“Json”代替“text”

这真的是
mysite.php
的全部内容吗?(您缺少内容类型标题)。从mysite.php返回的内容可以显示吗确保您的php脚本顶部没有任何HTML,只需使用获取代码并返回JSON即可。如果您在echo之后编写了任何HTML,则需要在echo之后调用exit()停止脚本@昆汀:不,不是。这是一个PHP类,但我只想打印重要部分。是或否,我这里没有内容类型标题。