2014-07-16 216 views
0

我使用一些jQuerypost要求,像這樣AJAX返回值

$.post('url', {data: some_data}, function(data, textStatus, jqXHR) { 
    console.log(data); //to debug 
    console.log(data.status == "ok"); //to debug 
    .... 
}); 

url命中一些php方法與

echo json_encode(array('status' => 'ok')); 
exit; 

再次出現問題是console.log(data)回報{"status":"ok"}console.log(data.status == "ok");拋出錯誤。怎麼會這樣 ?

回答

1

$。員額()返回只有一個對象

$.post('url', {data: some_data}, function(data) { 
    data = JSON.parse(data);//convert into JSON if data in string format 
    console.log(data); //to debug 
    console.log(data.status == "ok"); //to debug 
    .... 
}); 
1

我想你應該簡單的使用JSON解碼:

data = JSON.parse(data); 

,然後你可以將能夠做出比較data.status == "ok"

+0

我也想到了這一點,但如果是這樣的話,數據對象不會像OP的場景那樣返回「{」status「:」ok「}」而不僅僅是{「status」:「ok」}嗎? – VtoCorleone