使用jquery从iframe刷新父页面上的div

使用jquery从iframe刷新父页面上的div,jquery,iframe,html,parent,Jquery,Iframe,Html,Parent,我使用fancybox的模态框和iFrame。在iFrame的表单成功中,我使用以下代码: <script type="text/javascript"> window.setTimeout('window.top.location.href = "/page.asp"; ',999); </script> <script language="javascript"> <!-- setTimeout("parent.$.fancybox.close()

我使用fancybox的模态框和iFrame。在iFrame的表单成功中,我使用以下代码:

<script type="text/javascript">
window.setTimeout('window.top.location.href = "/page.asp"; ',999);
</script>

<script language="javascript">
<!--
setTimeout("parent.$.fancybox.close();",1000)
//-->
</script>

setTimeout('window.top.location.href=“/page.asp””,999);
这将关闭fancybox的模式框并刷新父页面。我希望使用Jquery在iFrame的父页面上刷新一个div

我希望刷新id为=“target”的父页面上的目标DIV,而不是整个页面。我如何使用JQuery来实现它

短暂性脑缺血发作

下面的代码示例

父页

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.6.1/jquery.min.js"></script>
</head>
<body>
<div id="target">
content content
</div>
</body>
</html>

内容
iFrame表单验证后的页面

<head>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.6.1/jquery.min.js"></script>
</head>

<script type="text/javascript">
window.setTimeout('window.top.location.href = "/parent_page.asp"; ',999);
</script>

<script language="javascript">
<!--
setTimeout("parent.$.fancybox.close();",1000)
//-->
</script>

setTimeout('window.top.location.href=“/parent_page.asp””,999);

如何在父页面上创建一个函数来刷新div id=“target”并从iFrame调用它。现在,整个父页面将刷新。

将第二个参数传递给jQuery,并将其传递给所需的范围

替换
window.setTimeout('window.top.location.href=“/page.asp””,999)使用此选项:

window.setTimeOut(function(){
    $("#target", window.parent).load("/page.asp #target");
},999);

您可以通过从iframe中包含的页面调用父页面中的javascript函数来实现这一点

window.parent.myFunctionInParent('my param');
你可以一步一步地学习这项技术


希望这能有所帮助。

您能提供一个完整的示例,其中包含一些HTML示例,包括一个DIV,并具体描述您希望“刷新”的内容以及“刷新”需要对您产生的效果吗?我怀疑您想要的是在AJAX中重新加载页面,将新的HTML传递给jQuery,然后使用
.remove()
.HTML(new\u HTML)
将新的DIV内容添加到现有的DIV中。我尝试使用您提到的方法在谷歌上搜索解决方案,但没有效果。我该如何使用AJAX来实现这一点呢?我是一个完全的jQuery新手。请包括父和iframe页面的代码示例以及完整的脚本语法。我的答案是,代码片段本身并没有被充分编辑,这就是你想要的吗?我尝试了Andre的解决方案,但没有成功。fancybox关闭,然后父窗口进入焦点,但div的内容没有改变。我是不是在页面中遗漏了一些东西来实现这一点?从我所读到的内容来看,我需要在父页面中创建一个函数,并从iFrame调用它。我在目标DIV中确实有其他DIV。我的印象是,目标DIV中的所有DIV都将刷新。为了让fancybox正常工作,我必须使用$(document.ready)在父页面上创建一个函数(function(){function triggerClose()){var el=$(“#fancyCloseId”);el.bind(“click”、$.fn.fancybox.close);el.trigger('click');}然后从iframe调用该函数