提问人:soumitra 提问时间:6/14/2023 最后编辑:Jason Allersoumitra 更新时间:6/14/2023 访问量:34
ajax 调用后未定义的 JSON 数据
JSON data undefined after ajax calling
问:
在 MainData 中显示名称时面临问题,而 MainData 显示完美 但是maindata->name:未定义。maindata 是 MySQL 中的长文本列
//this is the jQuery code section below
//original data stored in MySQL database in column MAINDATA
{
"name":"SOUMITRA AND & SARKAR",
"address":"24/1 Sahid Ananta Dutta Sarani, P.O. Rajbari,Kolkata 700 081",
"stateid":["19","20","21"],
"ref":{"noref":01,"myref":"02"}
}
//retuning after AJAX call in jQuery script the $.parseJSON value is below
[
{
"maindata":"{
"name":"SOUMITRA AND & SARKAR",
"address":"24/1 Sahid Ananta Dutta Sarani, P.O.Rajbari, Kolkata 700 081",
"stateid":["19","20","21"],
"ref":{"noref":01,"myref":"02"}
}"
}
]
for (var i=0;i<pass_data.length;i++)
{
//maindata is showing perfectly
alert(pass_data[i].maindata);
}
for (var i=0;i<pass_data.length;i++)
{
alert(pass_data[i].maindata["address"]; // undefined
}
我已经在我的问题中展示了它,到目前为止,我发现解析数据做错了什么。在 MainData 之后有 { 第二个括号,位于引号内。
答:
0赞
Geshode
6/14/2023
#1
在返回值中,maindata 是一个字符串,因此您无法访问其中的属性。您必须再次分析字符串才能使属性可访问。
例如:
const ajaxResult = [
{
"maindata":"{
"name":"SOUMITRA AND & SARKAR",
"address":"24/1 Sahid Ananta Dutta Sarani, P.O.Rajbari, Kolkata 700 081",
"stateid":["19","20","21"],
"ref":{"noref":01,"myref":"02"}
}"
}
]
ajaxResult[0].maindata = JSON.parse(ajaxResult[0].maindata)
console.log(ajaxResult[0].maindata.address) // "24/1 Sahid Ananta Dutta Sarani, P.O.Rajbari, Kolkata 700 081"
评论
0赞
soumitra
6/14/2023
Geshode 谢谢
评论
"noref":01