2012-03-23 72 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])