jQuery JSON解析意外的字符

时间:2014-02-04 18:07:42

标签: javascript jquery json parsing

我基本上读了一些传感器数据,这些数据被写入JSON文件。我试图在网页上显示这些读数,但我没有以前没有使用jQuery的经验。 我的measurements.json文件包含与注释输出var完全相同的内容。但是,当我使用注释行时,它的工作原理。但是当我像这里运行代码时它不起作用;

<script type="text/javascript">
jQuery(document).ready(function(){

    $("#json").load('measurements.json');

    //var output = jQuery.parseJSON('{"timestamp": 1391524099.334835, "pH": 1.4132352941176471, "Temperature": -14.934640522815688, "Chlorine": 999.0},');

    var output = jQuery.parseJSON("#json");

    $('#celc').append(String(output.Temperature));
    $('#cl').append(output.Chlorine);
    $('#ph').append(output.pH);

});
</script>

<div id="json"><strong>JSON</strong>: </div>
<div id="celc"><strong>Temperatuur</strong>: </div>
<div id="cl"><strong>Chloor</strong>: </div>
<div id="ph"><strong>Zuur</strong>: </div>

我可能做了一些明显的错误,但我似乎无法用谷歌来解决这个问题。

谢谢!

1 个答案:

答案 0 :(得分:4)

您应该使用$.getJSON()

$.getJSON( 'measurements.json' function(data){
    $('#celc').append(String(data.Temperature));
    $('#cl').append(data.Chlorine);
    $('#ph').append(data.pH);
}).error(function() { alert("error"); });

.load()是异步调用的。因此,当您致电jQuery.parseJSON("#json");时,它包含的<strong>JSON</strong>:是无效的JSON,因此您将获得异常