2011-09-24 28 views
4

有一些.php文件,它返回.png圖像文件。如何使用ajax請求獲取圖像?

如何使用jQuery獲取此圖像$.ajax()

另外,輸入參數是否存在一些錯誤,.php文件會以JSON方式返回錯誤。

如何理解,哪些信息已返回 - 圖像或JSON有錯誤?

UPDATE:

我需要畫一些統計圖形與此腳本。 .php文件獲取一些數據(例如帳戶ID,請求哪些統計信息)並檢查 - 如果此用戶(用戶ID從會話中獲取,則允許查看請求的用戶的統計信息)。如果允許,則返回圖像,如果不是 - 比json錯誤。 所以我可以做,但如果會有錯誤,圖像無法加載。但我需要向用戶顯示錯誤通知。

回答

2

您可以使用它像這樣:

<img src="data:image/png;base64,R0lGODlhUA... " width="80" height="15" /> 

所以我建議你從Ajax請求編碼字符串中的Base64並用它來顯示圖像

+1

即使是非常小的圖像,base64編碼字符串的實際大小也很大。 – Pacerier

3

如果您將此圖像作爲附件返回 - 我不能在JavaScript變量中獲得此附件,否則如果您在響應流中返回圖像並設置屬性內容類型,則可以將圖像指定給.phpsrs

$('img').attr('src', 'my-image-handler.php'); 
+0

Yeap,我明白這一點。但是如何處理這些錯誤。現在我會在第一篇文章中寫更多關於這個 –

+0

作爲一個選項創建另一個'.php',它將被請求必要的參數並執行你描述的驗證。如果請求有效,它將返回您將設置爲圖像源的圖像url,否則處理錯誤。 – Samich