2012-06-25 30 views
0

我解析JSON来获取数据,但它显示未定义的错误。我使用下面的代码。解析JSON显示未定义的错误

JSON数据: -

[{"id":"1","name":"vikash","email":"[email protected]","phone":"98744254114"},false] 

的javascript: -

function getid(id) { 
    //document.getElementById('pid').value=id; 
    $.ajax({ 
     url: "page.php?id=" + id, 
     success: function(result) { 
      alert(result); 
      var a = console.log(result.name); 
      alert(a); 

     } 
    }); 
}​ 
+0

你是用json作为第一个元素解析一个数组! –

+0

好吧,'result'是**数组**,如果它正确解析。如果不是,那么这是一个你必须首先解析的字符串。 –

回答

5

变化:

var a = result.name; 

要:

var a = result[0].name; 

http://jsfiddle.net/GYr8Q/

+0

我用它这是行不通的 –

+0

这是因为你从'console.log('...')捕获返回值';不要 - 因为没有什么可以捕捉的。 – xandercoded

+0

not working.same错误。 –

0

结果是一个数组,去名称使用result[0].name

编辑

随着菲利克斯国王提出的JSON可能无法解析,如果你添加一个dataType:'json'你的Ajax调用它应该被解析。

function getid(id) { 
    //document.getElementById('pid').value=id; 
    $.ajax({ 
     url: "page.php?id=" + id, 
     dataTpe: 'json', 
     success: function(result) { 
      alert(result); 
      var a = console.log(result[0].name); 
      alert(a); 

     } 
    }); 
} 
+0

无法正常工作。你能给我完整的代码吗? –

+0

@AnkPro请参阅编辑 – Musa