在Ajax调用上,我得到了像这样的response.responseText
.
"[
columns :[
{
"id":"name",
"header":"User name"
},
{
"id":"birth",
"header":"Date of birth"
}
],
data :[
{
"id":1,
"firstname":"Adam",
"lastname":"Smith"
},
{
"id":2,
"firstname":"Tom",
"lastname":"Brown"
},
]
]"
现在如何将columns
和data
分开并存储到两个不同的变量中?
我正在尝试使用此代码成功
success: function(conn, response, options, eOpts) {
JSON.parse(conn.responseText);
}
我收到此错误: VM23977:2未捕获的SyntaxError:位置8的JSON中出现意外的令牌c 在JSON.parse()
如何解决此问题。
答案 0 :(得分:1)
这不是有效的JSON。所有键必须用双引号括起来,在这种情况下,顶级应该是一个对象,而不是一个数组。数组不能有密钥。
{
"columns" :[
{
"id":"name",
"header":"User name"
},
{
"id":"birth",
"header":"Date of birth"
}
],
"data" :[
{
"id":1,
"firstname":"Adam",
"lastname":"Smith"
},
{
"id":2,
"firstname":"Tom",
"lastname":"Brown"
}
]
}
答案 1 :(得分:-1)
要解析json,首先需要一个有效的json字符串,而你的字符串不是
编辑:已经回答了