Javascript返回JSON不起作用

时间:2013-06-10 00:32:58

标签: javascript ajax json

我从我的php文件返回json,php文件工作正常,json正确回显,但js内的问题......

alert output from js

输出应为{“name”:“somename”,“id”:“someid”,“l”:“something”,“sname”:“somename”,“desc”:“longdescriptionhere”}

JAVASCRIPT

function getClubData(id) {
    alert(id);
    $.ajax({
        url: 'someurl',
        crossDomain: true,
        type: 'post',
        data: id,
        success: function (data) {
            var json = jQuery.parseJSON(data);
            alert(data);
        },
    });
};

PHP

$json = json_encode(array('name' => $name, 'id' => $id, 'l' => $l, 'sname' => $sname, 'desc' => $desc));

echo $json;

我确定php是正确的,因为它在页面上回响,正确的信息,它只是没有正确地转移回javascript ...

1 个答案:

答案 0 :(得分:2)

编辑/更新

现在我真的知道了什么,以及你想要的...... 继续我的更新回答

你需要给id一个键,所以在另一方面你的PHP脚本通过$ _POST变量知道在哪里获得这个id ....

所以你的javscript ......

function getClubData(id) {
alert(id);
$.ajax({
url: 'someurl',
crossDomain: true,
type: 'post',
data: {'theid':id},
success: function (data) {
var json = jQuery.parseJSON(data);
alert(data);


},
});

};

然后你的php脚本就会得到那个id

$id = $_POST['theid'];

$sql = "SELECT * from YOURTABLE WHERE ID = $id";
//and rest of your query and database stuff etc etc