struts2框架中,使用iframe/form方式的ajaxupload,提示下載json的問題解決


如果處理這個upload ajax請求的action配置了json的result type,請注意,在隱藏的表單向隱藏的iframe提交後,返回的json數據會導致彈出一個下載框(提示下載返回的json數據)----- 這和純ajax請求不同,純ajax請求會自動將json數據分析成object。


所以,解決方法是:

<result name="input" type="json">
<param name="contentType">text/plain</param>
<param name="ignoreHierarchy">false</param>
<param name="includeProperties">actionErrors\[\d+\]\..*</param>
</result>
<result type="json">
<param name="contentType">text/plain</param>
<param name="ignoreHierarchy">false</param>
<param name="includeProperties">actionMessages\[\d+\]\..*</param>
</result>

將json類型的result中加入contentType參數,強制指定使用text/plain的類型,這樣當隱藏表單提交後,就不會提示下載,而正常觸發form的onload事件了。

在使用jquery的一些ajaxupload插件的時候換了好幾個插件都出現這個問題,最後才發現因爲這個。

最後推薦一個用iframe/form方式實現的ajaxupload控件(不是jquery插件,但是沒有衝突):
http://www.diepbachduong.com/index.php/play/img
發佈了35 篇原創文章 · 獲贊 7 · 訪問量 23萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章