2012-03-23 126 views
1

这是jQuery的(阿贾克斯) - > PHP响应打印JSON数据

{"errorInfo":["23000",1062,"Duplicate entry 'blahblah' for key 'sn'"]} 

如何打印出来,用jQuery的,只是 “重复条目 'blahblah' 关键 'SN'”

success: function (html) {    
    $("#notification").fadeIn("slow") 
    .text(html); //Duplicate entry 'blahblah' for key 'sn'? html->errorInfo[2]? 
    } 

谢谢

UPDATE:

它是标准的PDO错误功能

 catch(PDOException $e) { 
      print json_encode($e); 
     } 

打印出来是这样的:

{"errorInfo":["23000",1062,"Duplicate entry 'SDAAASSASADASADASDAS' for key 'sn'"]} 

UPDATE:

我改变它的另一面,上源,我用

print json_encode($e->errorInfo[2]); instead of print json_encode($e) 
+0

感谢大家对你的答案,但我仍然不能让它的工作原理,萤火虫:html.errorInfo是不确定的 – InTry 2012-03-23 21:32:21

+0

你能解释发生了什么?你有错误吗?你可以在jsfiddle.net提供示例代码吗?这是一个工作示例:http://jsfiddle.net/gvqT3/。 – mellamokb 2012-03-23 21:32:52

+0

@mellamokb,ty,我看到你的工作示例,但一些我如何得到错误信息旧的时间“html.errorInfo是undefined” – InTry 2012-03-23 21:49:17

回答

4

正确的语法是html.errorInfo[2]或相当于html["errorInfo"][2]。当你可以(在这种情况下)习惯使用第一种形式。

当你在这里时,为什么不把html这个参数重命名为result

+0

+1关于变量名称。 – 2012-03-23 21:30:58

+0

谢谢你的提示,它已被更改 – InTry 2012-03-23 22:34:39

1
success: function (html) {    
    $("#notification").fadeIn("slow") 
    .text(html.errorInfo[2]); //Duplicate entry 'blahblah' for key 'sn'? html->errorInfo[2]? 
} 
2

你很近。 JavaScript使用点操作对象。您正在使用PHP的箭头运算符语法。

$("#notification").fadeIn("slow").text(html.errorInfo[2])