在jquery.simplemodal中使用iframe,当弹出窗口关闭时,iframe会重新加载

时间:2010-03-04 19:34:55

标签: jquery iframe simplemodal

var pt_popup_options = {};

function pt_popup_iframe(sURL, sOkFunction)
{
    pt_popup_okfunction = sOkFunction;
    $("#pt_msgBox").css('width', '700px');
    $("#pt_msgBox").css('heigth', '500px');
    $("#pt_msgBox > p").html('<iframe style="width: 696px; height: 496px;" src="' + sURL + '"></iframe>');
    $("#pt_msgBox").modal(pt_popup_options);
}

当弹出窗口通过关闭按钮或弹出窗口右上角的“x”关闭时,iframe会重新加载并向服务器发出请求。它不应该这样做。有什么想法可以防止吗?我在Chrome和jQuery 1.4.2上。

谢谢!

3 个答案:

答案 0 :(得分:3)

我遇到了同样的问题。

最简单的解决方法是设置persist选项。

$("#pt_msgBox").modal({persist:true});

从simplemodal-1.3.5开始

  

persist :( Boolean:false)跨模态调用保留数据?只要   用于现有DOM元素。如果为true,则将保留数据   跨模态调用,如果为false,则数据将恢复为其   原始状态。

答案 1 :(得分:1)

如果您正在使用jQueryUI的对话框,另一个选项,我前一段时间写了一个扩展来处理对话框中的各种iFrame问题......

http://plugins.jquery.com/project/jquery-framedialog

答案 2 :(得分:0)

似乎可以使用:


$("#pt_msgBox > p").html('<iframe style="width: 696px; height: 496px;"></iframe>');
$("#pt_msgBox").modal(pt_popup_options);
$('#pt_msgBox').find('iframe').attr('src', sURL);