JSON.parse返回未定义的值

时间:2012-10-24 12:58:24

标签: json jsonp

password.json

组成
{    
    "passwd":"pavankumar",
     "name":"pavan"

};

在Mozilla和Chrome

中使用分号和不使用分号进行了尝试
function ajax_post(){

  var hr=  new XMLHttpRequest();

  hr.open("GET", "password.json", true);

  hr.setRequestHeader("Content-type", "application/json",true);

  hr.onreadystatechange = function(){

    if(hr.readyState == 4 && hr.status == 200){

       var data = JSON.parse(hr.responseText);
       alert(data);   // At this stage the json file is displayed. correctly..
       var status = document.getElementById("status");
       status.innerHTML= data.name;     //returning the undefined value....     
    }
  }

  hr.send(null);
}

1 个答案:

答案 0 :(得分:0)

hr.responseText将是一个表示对象的JSON编码的字符串,因此您想要JSON.stringify它;这将把它变成单个字符串的JSON表示。只需直接JSON.parse