I think I'm missing something here:
Using AjAX I get some data from a database and send it back in JSON format
$jsondata = array();
while ($Row = mysql_fetch_array($params))
{
$jsondata[]= array('cat_id'=>$Row["cat_id"],
'category'=>$Row["category"],
'category_desc'=>$Row["category_desc"],
'cat_bgd_col'=>$Row["cat_bgd_col"]);
};
echo("{"Categories": ".json_encode($jsondata)."};");
No problem so far I think.
On the cleint side I receive back the above into
ajaxRequest.responseText
and if I do this
var categoriesObject = ajaxRequest.responseText;
alert(categoriesObject);
I see what I expect to see ie the entire array in the alert.
Where it all goes wrong is trying to access the response. The error I get is that the "categoriesObject" is not an object - if not what is it? what's bugginh me is that I can't even access it like this:
document.write(categoriesObject.Categories[0].category);
so what am I doing wrong?
See Question&Answers more detail:
os 与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…