javascript - 更新父页面上的 Div,最好使用 jQuery

标签 javascript jquery

我之前使用过 jQuery 的 .html() 函数来更新内容,但它一直在 .ajax() 函数内部,例如:

$.ajax({
       padding : 15,
       type    : "POST",
       cache   : false,
       url     : "anyPage.php?page=ajax",
       data    : $(this).serializeArray(),
       success: function(data) {
        $("#Div").html(data);   
       }
      });

问题是,为了利用 TinyMCE,我必须在 iframe 内的 Fancybox 中打开它,但我遇到了发布数据的问题,通过将表单提交到 PHP $_GET URL 解决了这个问题(非常确定)这不是它实际的名称),然后关闭 Fancybox:

<? if($_GET['page'] == "X"){
$_SESSION["X"] = $_POST['X']; 
echo '<script type="text/javascript">
    parent.$.fancybox.close();
</script>';
die();} ?>

这成功地将 Post 变量传递到 Session 变量中,然后我可以从主页内部调用该变量。问题是,我还想刷新主页上的 div,但遇到了问题。

我认为我不能使用 .ajax(),至少我没有尝试使用它。

我还尝试使用 .html() 和 .load() 与 .parent() 等的不同组合。我尝试过的几个例子(其他的早已被覆盖):

parent.document.getElementById("Div").innerHTML = "something";

parent.$("Div").html("Some updated text");

按如下方式插入:

echo '<script type="text/javascript">
    parent.$("Div").html("Some updated text");
    parent.$.fancybox.close();
</script>';

还没有找到任何有用的东西。想知道是否有人可以给我一些帮助。

最佳答案

如果域匹配,则在 iframe 和父文档中,您应该能够使用以下任一方式访问父文档:

window.parent
parent
top          // If the parent is the top-level document
window.top

由于 parenttop 可以被 javascript 覆盖,我会使用 window.parentwindow.top >

关于javascript - 更新父页面上的 Div,最好使用 jQuery,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16116113/

相关文章:

javascript - 如何确定用户是否仍在使用基于 session 的身份验证登录?

javascript - Webpack 一个合适的加载器来处理这种文件类型

javascript - 为什么 JavaScript 函数声明(和表达式)?

jquery - 触发功能 - 键绑定(bind) CTRL+Z

jquery ui 自动完成复杂搜索以及前后结果

javascript - 在可编辑模式下添加新的 Div

javascript - $().hide 仅适用于第一次

javascript - 首次登录时需要提醒

jquery - 如何动态更改 kendo ui 网格中的值

javascript - 解析一串 CSS 声明并将其转换为数组