2011-02-02 69 views
1

我有一個使用jQuery的ajax函數發佈到網站的頁面。 響應是一個JSON對象,它包含一條消息和一些其他狀態代碼以及在成功回調中呈現爲div的編碼HTML。Firefox + jQuery:成功時不會觸發大量返回數據的ajax調用

這在大部分情況下工作正常,但是,當使用最新的firefox(inc beta)時,成功回調從不會在響應大於1 Meg時觸發。

這是一個已知問題,是否有解決方法?

我試圖報廢JSON對象併發回直接的html,但同樣的問題發生。火狐瀏覽器和jQuery 1.4似乎不喜歡大於平均水平的響應。

感謝

更新 - 更詳細 我使用的是Firefox 3.6.13和jQuery 1.4連同asp.net MVC 2 數據使用MVC2 JSON的方法返回。部分視圖呈現爲字符串以組成JSON。請記住,在返回平面html時,我會看到相同的行爲。

我會掛鉤onError回調,看看是否被調用。

UPDATE 2 錯誤回調告訴我發生了'parseerror'。

+0

您使用的是ASP.NET嗎? – Petah 2011-02-02 11:47:54

回答

0

一般來說,你會想避免編碼的HTML。只返回JSON數據並改用jquery模板(http://api.jquery.com/tmpl/)。

瀏覽器確實對JSON施加了大小限制,並且它在不同的瀏覽器上有所不同。

0

stumbled upon今天有一個類似的錯誤,但我使用的是jQuery 1.5和MVC3。導致錯誤的原因是將jQuery.validation更新爲每個ajax調用應用的默認AJAX設置,從而使正常的AJAX調用成爲JSONP調用。 parseerror被拋出,因爲沒有找到JSONP回調。也許你正面臨着類似的問題。

相關問題