Php jquery中的.get()

Php jquery中的.get(),php,jquery,Php,Jquery,不久前,我问了一个题为“getting.get()in jquery to work”的问题,我在代码中犯了一个愚蠢的错误,大家都跳了出来。我已经修复了,但是.get()似乎不起作用。它应该在身体底部印上约翰和下午2点的名字,但事实并非如此。我的路径名是正确的。有人能帮忙吗 <html> <head> <title>Testing Site</title> <script type="text/javascript" src="jquery.

不久前,我问了一个题为“getting.get()in jquery to work”的问题,我在代码中犯了一个愚蠢的错误,大家都跳了出来。我已经修复了,但是.get()似乎不起作用。它应该在身体底部印上约翰和下午2点的名字,但事实并非如此。我的路径名是正确的。有人能帮忙吗

<html>
<head>
<title>Testing Site</title>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript">
$(document).ready(function(){
        $("#id").click(function(){  
            $('#hello').css('background-color', 'blue');
            $.get("test.php",
                function(data){
                    $('body').append( "Name: " + data.name )    //John
                    .append( "Time: " + data.time );            //2pm
                    $('body').css('background-color',     'red');   
                }, "json");
        });
});
</script>

</head>
<body>
<span id="hello">Hello World!</span>
<input type="button" id="id" value="Click Here"></input>
</body>
</html>

试验场
$(文档).ready(函数(){
$(“#id”)。单击(函数(){
$('#hello').css('background-color','blue');
$.get(“test.php”,
功能(数据){
$('body').append(“Name:+data.Name)//John
.append(“Time:+data.Time);//下午2点
$('body').css('background-color','red');
}“json”);
});
});
你好,世界!
这是php

<?php echo json_encode(array("name"=>"John","time"=>"2pm")); 
?>

您告诉它需要json。你在发送json吗?尝试添加

header('Content-type: application/json');

使用jQuery
.getJSON()
函数,或者像当前一样在使用之前将数据解析为JSON,可能会有更好的运气


您使用的是什么版本的jQuery?如果我一直回到1.3.2,我可以复制你的问题。从1.4开始,事情似乎按预期进行。如果使用
console.log
您的
data
变量,可以看到这一点。对于1.3.2,您将看到一个字符串作为输出,对于1.4+,您将看到一个对象



正如GSto所建议的,即使使用1.3.2版,也可以使用。

您在FireBug控制台中看到了什么?是否正在发出AJAX请求?看起来怎么样?服务器的响应是什么?在没有头类型的情况下,它应该仍然可以工作,事实上,我从来没有在PHP脚本中包含这个,jQuery仍然可以解析JSON。尝试删除“JSON”参数,使其默认为“intelligent guess”如果你没有使用JavaScript
控制台
对象,你会遗漏一些东西:)它在和Chrome以及with中本机可用。如果在回调方法中添加
console.log(data)
,您将能够看到
data
是什么。对于JS对象,控制台将以不同方式显示它们,而字符串将显示为文本。