我目前正在研究PHP/Javascript/JQuery項目,其中PHP通過ajax請求將一些JSON編碼數據返回給網頁。在JSONObject中解碼JSON對象和JSON數組
JSON數據包含多個對象和數組,但我看不出如何讓處理數據。
下面是JSON是如何在PHP
$result = mysql_query($query);
if ($result)
{
$data = array();
while ($myrow = mysql_fetch_array($result))
{
$data[] = $myrow['VersionName'];
}
$returnArray["RESULT"] = HelperClass::generateResponseArray(HTTPResponseCodes::OK, true, null, false);
$returnArray["DATA"] = $data;
return json_encode($returnArray);
}
的generateResponseArray
功能如下所示創建:
public static function generateResponseArray($httpStatusCode, $wasActionSuccessful, $message,
$jsonEncodeArray = true)
{
$response = array();
$response["HTTPStatusCode"] = $httpStatusCode;
$response["actionSuccessful"] = $wasActionSuccessful;
$response["Message"] = $message;
if ($jsonEncodeArray)
{
return json_encode($response);
}
else
{
return $response;
}
}
下面是我如何我試圖通過JavaScript來解碼JSON。
function getVersions()
{
$.post("../Middleware/CrashManagement.php",
{
type: "GetVersions",
appID: getParameterValue("id")
},
function (result)
{
var obj = JSON.parse(result);
var resultData = JSON.parse(obj.RESULT);
if (resultData.actionSuccessful === true)
{
alert("hello");
}
}
)
}
Chrome的沒有給我任何指針至於問題出在哪裏,它只是說,在出於某種原因我的HTML開始標記輸入意外結束,但它是與此功能,如果我去掉鍍鉻無更長時間報告此錯誤。
感謝您提供的任何幫助。
任何你不使用'getJSON'而不是'post'的理由?另外,我非常肯定所有jQuery的Ajax函數都會返回分析數據,所以一旦數據返回,您應該只需'result.actionSuccessful'即可獲取該值。 – Andy 2014-12-05 10:30:37