我在ajax调用后收到以下JSON响应。
{"head":{"json":"{ 'rows': [ {'CustName' : 'JAMES', 'CustId' : 'Gans Communications'} , {'CustName' : 'JAMES', 'CustId' : 'GANNETTW'} , {'CustName' : 'JAMES', 'CustId' : 'GANNONCO'} , {'CustName' : 'JAMES', 'CustId' : 'GANSTIRE'} , {'CustName' : 'JAMES', 'CustId' : 'GANTABSW'} , {'CustName' : 'JAMES', 'CustId' : 'GANTONMI'} , {'CustName' : 'JAMES', 'CustId' : 'GANDALF'} , {'CustName' : 'JAMES', 'CustId' : 'GANDALF2'} , {'CustName' : 'JAMES', 'CustId' : 'GANDK'} , {'CustName' : 'JAMES', 'CustId' : 'GANDMTOW'} , {'CustName' : 'JAMES', 'CustId' : 'GANDOD'} , {'CustName' : 'JAMES', 'CustId' : 'GANDTOWI'} , {'CustName' : 'JAMES', 'CustId' : 'GANDY.LD'} , {'CustName' : 'JAMES', 'CustId' : 'GANE .LD'} , {'CustName' : 'JAMES', 'CustId' : 'GANICATL'} , {'CustName' : 'JAMES', 'CustId' : 'GANKEMA'} , {'CustName' : 'JAMES', 'CustId' : 'GANKEM4'} , {'CustName' : 'JAMES', 'CustId' : 'GANLYWAL'} , {'CustName' : 'JAMES', 'CustId' : 'GANN ETT'} , {'CustName' : 'JAMES', 'CustId' : 'GANNETTT'} ]}"},"body":null,"responseTime":null,"leftPanel":null}
我曾经尝试过使用Jquery将CustName和CustId显示在文本框中。但我无法正确获取值。
以下是我的示例代码:
var results_customer=data.head.json;
var new_val = JSON.stringify(results_customer);
var newresult = eval(results_customer);
alert(newresult.length);
console.log(newresult);
我收到上述值的错误。
请问有什么能帮助我取得价值吗?提前致谢
答案 0 :(得分:2)
您有一个编码错误的Json字符串作为响应。 Json字符串必须用双引号"
分隔,而不能用单引号'
分隔。所以你必须在使用JSON.parse()
方法之前转换它:
var response = {"head":{"json":"{ 'rows': [ {'CustName' : 'JAMES', 'CustId' : 'Gans Communications'} , {'CustName' : 'JAMES', 'CustId' : 'GANNETTW'} , {'CustName' : 'JAMES', 'CustId' : 'GANNONCO'} , {'CustName' : 'JAMES', 'CustId' : 'GANSTIRE'} , {'CustName' : 'JAMES', 'CustId' : 'GANTABSW'} , {'CustName' : 'JAMES', 'CustId' : 'GANTONMI'} , {'CustName' : 'JAMES', 'CustId' : 'GANDALF'} , {'CustName' : 'JAMES', 'CustId' : 'GANDALF2'} , {'CustName' : 'JAMES', 'CustId' : 'GANDK'} , {'CustName' : 'JAMES', 'CustId' : 'GANDMTOW'} , {'CustName' : 'JAMES', 'CustId' : 'GANDOD'} , {'CustName' : 'JAMES', 'CustId' : 'GANDTOWI'} , {'CustName' : 'JAMES', 'CustId' : 'GANDY.LD'} , {'CustName' : 'JAMES', 'CustId' : 'GANE .LD'} , {'CustName' : 'JAMES', 'CustId' : 'GANICATL'} , {'CustName' : 'JAMES', 'CustId' : 'GANKEMA'} , {'CustName' : 'JAMES', 'CustId' : 'GANKEM4'} , {'CustName' : 'JAMES', 'CustId' : 'GANLYWAL'} , {'CustName' : 'JAMES', 'CustId' : 'GANN ETT'} , {'CustName' : 'JAMES', 'CustId' : 'GANNETTT'} ]}"},"body":null,"responseTime":null,"leftPanel":null};
var json = response.head.json.replace(/'/g, '"');
var data = JSON.parse(json);
console.log(data);
假设您的数据不包含单引号...