天天看點

解決IE浏覽器使用UEditor修改文章後,重新打開文章,顯示修改之前内容的問題

場景:門戶網站項目中,使用了UEditor編輯器編輯推送到前台的文章

問題:背景修改一篇文章後,傳回清單,然後重新編輯剛剛修改的文章,結果發現顯示的是修改之前的内容,前台看推送的文章是修改了的,FF、Chrome浏覽器下無此問題,IE浏覽器有(傳回清單跟進入文章修改頁,浏覽器URL沒改變,内容是通過ajax請求局部更新的)。

      開始以為是UEditor在IE浏覽器下的緩存問題,然而并沒有在網上搜尋到相關的問題。在重新檢閱代碼的時候,突然發現可能是IE浏覽器緩存了UEditor請求文章内容的ajax請求結果,才導緻文章内容沒有更新,結果還真是,是以在這裡記錄一下。

加載文章内容的js代碼如下,添加設定紅色字型禁止浏覽器緩存即可:

   //對編輯器的操作最好在編輯器ready之後再做

editor.addListener('ready', function() {

var id = '${content.id}';

$.ajax({

url : "/xxxxx/xxxxx/getContent",

contentType: "application/json;charset=utf-8",

data:{id:id},

dataType : 'json',

cache:false,

ifModified:true,

success : function(data) {

data.content && editor.setContent(data.content);

}

});

});