嗨,我有一个简单的JSON输出:
"{
\"max_output_watts\": 150,
\"frame_length_inches\": \"62.20\",
\"frame_width_inches\": \"31.81\"
}"
Run Code Online (Sandbox Code Playgroud)
我在一个函数中使用它:
...
$.getJSON(pop_model_dims_url, {model_id: selected}, function(data, jqXHR){
alert(data.max_output_watts);
});
...
Run Code Online (Sandbox Code Playgroud)
警报现在只是一个占位符,但我不明白为什么警报值是'未定义'.如果我做:
...
$.getJSON(pop_model_dims_url, {model_id: selected}, function(data, jqXHR){
alert(data);
});
...
Run Code Online (Sandbox Code Playgroud)
我按预期得到了完整的json转储.
任何帮助非常感谢.
由于您alert(data);为您提供了完整的JSON转储,这可能意味着JSON已在服务器上进行了双重编码.
jQuery会为你解析一次,但是你需要再次解析它.
$.getJSON(pop_model_dims_url, {model_id: selected}, function(data, jqXHR){
data = $.parseJSON(data);
alert(data.max_output_watts);
});
Run Code Online (Sandbox Code Playgroud)
当然这不是一个正确的解决方案.正确的解决方案是将其修复在服务器上.
一旦你完成了,你将不再需要$.parseJSON了.
| 归档时间: |
|
| 查看次数: |
538 次 |
| 最近记录: |