javascript - 从模式对话框中的 ajax 调用中删除缓存的信息

标签 javascript jquery ajax twitter-bootstrap caching

当用户单击表格的一行时,我将显示模式( Bootstrap )对话框。这是我正在使用的一小段代码:

.done (function (data_, textStatus_, jqXHR_) {
        $('<pre/>').html(doc_contents[1].text_content).appendTo('#employee_document_contents');
        $('#mydialog').modal("show"); 
        $('#mydialog').draggable(); 

});

上面的代码获取一个 JSON 值并显示在对话框中。我面临着与缓存相关的问题,我相信我的 ajax 调用。对话框中以前的内容不会被删除,我必须从浏览器中清除缓存,然后再次单击特定行才能查看我想看到的内容。我尝试使用 cache : false,这样做在 URL 中添加了基于日期的时间戳,但我仍然在对话框中看到旧内容。一些 SO 帖子建议销毁该模式,但我相信它不会再次打开。我可以遵循任何更好的方法来确保我在对话框中看不到以前的内容吗?我使用 Chrome 作为浏览器。

最佳答案

我认为这不是缓存问题,而是 DOM 操作问题。 您应该替换 #employee_document_contents 中的内容,而不是appendTo。

在回调函数中尝试以下代码:

var content = $('<pre />').html(doc_contents[1].text_content);
$('#employee_document_contents').html(content); // Here you replace the content
$('#mydialog').modal("show"); 
$('#mydialog').draggable();

关于javascript - 从模式对话框中的 ajax 调用中删除缓存的信息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38864563/

相关文章:

javascript - 根据过滤后的输出显示/隐藏警告消息 ng-repeat

javascript - JQuery 1.4.4 和数据表 1.7 不工作

javascript - 使用本地存储重新加载页面时如何存储 div 的事件类

html - 使用带有 cors.preflight.header 过滤器的 ajax 和 Tomcat 的 RESTful 服务中的 http 预检 header 问题

javascript - AJAX:人们在没有数据库的情况下在页面上实时交互?

javascript - 尝试呈现 "loading"提示,但数据一旦准备好

javascript - 使用D3.js创建人口金字塔

javascript - 使用 Javascript/Jquery/PHP 实现菜单栏

javascript - Addclass 不是 jQuery 中的函数

javascript - AJAX 响应 - XmlHttp.responseXML 被切断