如何使用jQuery.parseJSON获取数据

时间:2012-03-03 16:45:09

标签: javascript jquery json

在第1页中,我有这个数组:

$pole = array("countLike" => "countLike", "Message" => "Some message");
echo json_encode($pole);

我希望在第2页上获取此数据,但此代码不起作用。

function Like(id)
{
    $.post("page1.php", { action: "Like", "id": id }, function(data) {
        var obj = jQuery.parseJSON(data);
        $(".countLike#"+id).html(obj.countLike);
        $(".Message#"+id).html(obj.Message);
    });
} 

你能用这段代码帮我吗? 感谢。

2 个答案:

答案 0 :(得分:1)

json作为预期请求的预期输出传递。

function Like(id)
{
    $.post("page1.php", { action: "Like", "id": id }, function(data) {

        //data is already a json parsed string

        $(".countLike#"+id).html(data.countLike);
        $(".Message#"+id).html(data.Message);
    }, "json"); // <<<<< This is what you missed
} 

答案 1 :(得分:0)

代码应该可以处理请求,但元素选择器存在问题。

".countLike#"+id 
".Message#"+id

“#”与类名不是空格。现在问题是你在寻找ID为“#”+ id的元素吗?我怀疑你是这样的,你根本不需要为ID添加前缀的类,只需使用

$('#' + id)

对于jQuery来说,Id选择器比类更快,因为页面中只能有一个。