使用 iziModal 的 iframe 功能会一直使用缓存的 URL,而不是新的 URL

Posted

技术标签:

【中文标题】使用 iziModal 的 iframe 功能会一直使用缓存的 URL,而不是新的 URL【英文标题】:Using iziModal's iframe feature keeps using cached URL, not new URL 【发布时间】:2017-09-06 06:56:21 【问题描述】:

我正在使用 iziModal (http://izimodal.marcelodolce.com/)。 我在使用 iframe 功能时遇到问题。 首次加载页面时,iframe 选项可以正常工作。 在我的页面上,我有一个基于按钮单击生成的动态 URL(我正在使用 LimeSurvey 进行调查,但根据您按下的按钮使用不同的用户令牌)。 我的问题是,在第一次单击并成功打开该 URL 的 iziModal 后,任何进一步的按钮单击都不会将 iziModal iframeURL 更新为新 URL,但仍使用旧的(看似缓存的)URL!我该如何阻止这种情况? 我尝试手动覆盖 iframe URL,但这根本行不通。 我的 iziModal 设置将 iframe 设置为 true,将 iframeURL 设置为新生成的 URL(这是通过 AJAX 调用完成的)。我还将历史记录设置为 false。

我还需要做什么来确保 iziModal 使用从 AJAX 调用新生成的 URL 而无需重新加载整个页面?

【问题讨论】:

【参考方案1】:

在初始化 iziModal 实例之前尝试destroy 方法:

function modalOpen($target, url)           
    var options = 
        iframe: true,
        iframeHeight: 200,
        iframeURL: url,
        autoOpen: true
    ;
    $target.iziModal('destroy');
    $target.iziModal(options);

【讨论】:

【参考方案2】:

尝试缓存破坏您的网址。 "www.url.com/?oijd="

【讨论】:

我也试过了,我添加了一个以毫秒为单位的时间参数。零差异。 这没有提供问题的答案。要批评或要求作者澄清,请在他们的帖子下方留下评论。 - From Review @RohanBüchner 是的,但它可能有所以不要批评我的回答。

以上是关于使用 iziModal 的 iframe 功能会一直使用缓存的 URL,而不是新的 URL的主要内容,如果未能解决你的问题,请参考以下文章

javascript iziModalЗаготовка

iframe 框架的功能

有没要啥办法实现iframe功能?不用iframe。

前端iframe标签介绍及使用

如果在消息框中按下“否”,程序会一次又一次地返回消息框?

iframe的用法场景