2011-04-01 315 views
3

我从数据库中选择数据并将其返回到json对象中,但是当我尝试访问该对象的属性时,它们显示为未定义的,但如果我查看正在返回的对象,或者使用Mozilla的萤火或内置的Web开发工具铬合金,对象的属性有值,JSON对象返回值但显示undefined

$.getJSON("info.php", {uid:one}, function(data){ 
     var size = $(data).size(); 
     console.log(data); 
     //display systems 
     $(child).append('<tr><th height="20" colspan="2">Contact Person</th><th height="20">Contact Number</th><th height="20" colspan="2">E-mail</th></tr><tr><td colspan="2">'+data.contact_person+'</td><td>0'+data.contact_number+'</td><td colspan="2">'+data.email_address+'</td></tr>'); 

     child.show(); 
     loader.hide(); 

    }); 

任何帮助深表感谢。

这里的CHROM如何显示它(我把它换成敏感数据 “-----”):

[ 对象
蜜蜂: “未定义”
BWO: “未定义”
cell_number “---”
城市 “---”
COMPANY_NAME: “----”
contact_number: “----”
contact_person: “”
日期:“2010-10- 18“
EMAIL_ADDRESS: “-----”
esco_number: “-------”
fax_number: “0”
FGN: “未定义”
磅: “未定义”
无:“未定义 “
数: ”761“
其他: ”未定义“
邮政信箱: ”------“
postal_city: ”------“
POSTAL_CODE:” ----- “
postal_postal_code:”-----“
postal_province: “---------”
postal_suburb: “--------”
省: “-------”
same_as_physical: “”
史密: “未定义”
状态: “活动”
街道: “--------”
郊区: “----------”
时间:“11:36: 21"
UID: “----------”
网站: “”
:对象
]

//试图访问数据在Chrome的控制台
Object.pobox
不确定

//这里的控制台。DIR:
数组[1]
0:对象
蜂: “”
BWO: “”
cell_number: “123456789”
城市: “巴瑟斯特”
COMPANY_NAME: “测试”
contact_number: “123456789”
contact_person: “测试”
日期: “2011-03-22”
EMAIL_ADDRESS: “[email protected]
esco_number: “010101”
fax_number: “123456789”
FGN: “”
磅: “”
无: “”
号: “01”
其他: “”
邮政信箱: “0”
postal_city: “”
POSTAL_CODE: “0”
postal_postal_code: “0”
postal_province: “”
postal_suburb: “”
省: “普东”
same_as_physical: “上”
施密: “”
状态: “活动”
街道: “测试”
郊区: “测试”
时间: “10时09分04秒”
UID:“0 “
网站: ”test.co.za“
:对象
长度:1个
:数组[0]

+1

您可以在Firebug看到它时发布JSON响应吗?这可能有助于我们诊断问题。 – 2011-04-01 12:24:09

+0

你从服务器返回什么?你如何访问对象的属性?请提供一些代码。 – 2011-04-01 12:24:14

+0

'console.log(data)'显示了什么? – 2011-04-01 12:24:27

回答

4

啊,看起来你正在获取一个包含对象的数组。您可以在PHP脚本中修复它,或者在javascript函数的开头添加一行修补程序,

data = data[0]; 
+0

你是个传奇!!!! – MattBH 2011-04-01 13:42:49