json_encode返回undefined

时间:2011-12-09 18:06:07

标签: php javascript jquery json

我的脚本从我的json_encode php

返回未定义的值

index.php

<?php
    $returnThis['user'] = "Robin098";
    $returnThis['id'] = "08465";

    echo json_encode($returnThis);
?>

sample.html

<head>
    <script>
        function clickHere(){
            $.get("index.php", function(data) {
            alert(data.user);
            });
        }

    </script>
</head>
       <body>
       <input type="button" onclick = "clickHere();" value="ClickHere!"/> 
       </body>

我该如何解决这个问题?

2 个答案:

答案 0 :(得分:3)

如果您希望解析JSON,请使用jQuery.getJSON方法而不是.get。另外,请确保正确加载了jQuery库。

    function clickHere(){
        $.getJSON("index.php", function(data) {
            alert(data.user);
        });
    }

目前,您正在使用$.get(url, function(data){...})。在此上下文中,data是一个包含服务器响应的字符串:

{"user":"Robin098","id":"80465"}

在函数内使用alert(data)将显示此字符串。

答案 1 :(得分:1)

您似乎正在设置$returnThis,但随后返回$aReturn。你不想要:

$returnThis['user'] = "Robin098";
$returnThis['id'] = "08465";

echo json_encode($returnThis);