解码$ .post的响应

时间:2015-10-22 14:46:35

标签: javascript php jquery json .post

这是我的javascript

<script>
    function checkEmail(email) {
        $.post('<?=base_url()?>checkemail',{ emailid : $('#inputEmailId').val() },function(d){
                CC = eval(d);
                alert(CC);
            });
    }
</script>

PHP文件的一部分包含

if ($parts) { //these details exist
        $obj->status = 'yes';
        }
    else {
        $obj->status = 'uni';
    }

    $res[] = $obj;

当我print_r($res)时,我得到status=>'yes'

但是当我在我的javascript中alert(CC)时 我得到了

function array() {
[native code]
}

如何在javascript中提醒status

3 个答案:

答案 0 :(得分:1)

正如评论中所述,php部分应包含对json_encode

的调用
if ($parts) { //these details exist
    $obj->status = 'yes';
}
else {
    $obj->status = 'uni';
}

// sending out $res should do it
// you can also add proper JSON headers if the content is not properly formatted
header('Content-Type: application/json');
print json_encode($obj);

你的javascript应该是这样的

function checkEmail(email) {
    $.post('<?=base_url()?>checkemail',{ emailid : $('#inputEmailId').val() },function(d){
            alert(d.status);
        });
}

答案 1 :(得分:0)

php部分可以像这样更改。

而不是使用objectarray使用variable。不需要使用对象和数组来简化复杂化。

if ($parts) { //these details exist
    $status = 'yes';
    }
else {
    $status = 'uni';
}

echo $status;

答案 2 :(得分:0)

这很有用 PHP

if ($parts) { //these details exist
        $obj->status = 'yes';
        }
    else {
        $obj->status = 'uni';
    }

    $res[] = $obj;

    $data['content'] = json_encode($res);

的Javascript

$.post('<?=base_url()?>checkemail',{ emailid : $('#inputEmailId').val() },function(d){
                CC = eval(d);
                alert(CC[0].status);
            });