我遇到了jQuery 1.9.1和json响应的问题。 我的html-File非常简单,可用于测试(使用jQuery 1.8.3):
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8" />
<script type="text/javascript" src="//ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js"></script>
<script type="text/javascript">
$.ajax({
url: "php/news_test.php",
dataType: "json",
success: function(json){
$("#news-box").html(json.news.name);
}
});
</script>
</head>
<body>
<div id="news-box"></div>
</body>
</html>
这适用于以下php-File:
header('Content-type: application/json');
include('core/database.php');
/*
$db = new Database();
...
...
...
*/
echo json_encode(array("news" => array("name" => "Test")));
但是当我改为jQuery 1.9.1时,我没有得到回应。
我必须评论seconde行include('core/database.php');
之后我得到了jQuery 1.9.1的响应。
database.php只有一行用于测试$db_host = 'localhost';
我不能在jQuery 1.9.1中使用include吗? 我的代码中有错误吗? 或者这是一个错误?
答案 0 :(得分:0)
当简单地将jQuery升级到1.9.1(从1.7.2开始,我相信)时,我遇到了同样的问题。在不更改任何其他代码或服务器的情况下,我开始收到此错误。我解决它的方法是删除行
dataType: "json",
来自AJAX电话的。
答案 1 :(得分:0)
我遇到了同样的问题,这是因为该文件必须在Dreamweaver中选中“包含Unicoi签名(BOM)”时保存。您必须重新保存问题文件而不使用该选项(将复选框留空)。有关详细信息,请参阅this article。