【问题标题】:possible to refresh (not reload) a parent page with javascript?可以用javascript刷新(不重新加载)父页面吗?
【发布时间】:2013-08-21 23:15:06
【问题描述】:

我有一个显示图像的页面。如果某个记录还没有与之关联的图像,我会为用户提供一个弹出窗口链接,以便他们可以上传图像。当用户在弹出窗口中提交表单时,它会刷新,上传图像,然后自动关闭。在弹出窗口关闭之前,我想刷新(而不是重新加载)父级。我不想重新加载的原因是因为我正在使用发布数据来动态填充页面内容。如果我重新加载,以前的所有数据都会丢失。我试图将window.opener.location.reload(true); 更改为window.opener.location.refresh(true); ...但显然这不是一个有效的命令。

有没有办法刷新父页面而不是简单地重新加载它?

【问题讨论】:

  • "refresh" 和 "reload" 意思一样...
  • 好吧,当我重新加载页面时,我丢失了前面步骤中的所有帖子数据。重新加载似乎与转到 url 栏的效果相同,然后按 enter... 与按 f5 不同。
  • 你是如何加载父内容的?
  • 哈哈,url bar 和 f5 是一样的。编辑:网址栏不会滚动到原始位置或恢复表单字段。
  • 我认为@Brds的意思是显示新上传的图片

标签: javascript refresh reload


【解决方案1】:

如果要显示新上传的图片,那么最好的方法是在父页面上设置一个函数,例如:

top.refreshImage = function(url){
    $("#<ID_OF_IMAGE_TAG>").attr("src",url);
    //Or if you are not using jQuery then usual way
    document.getElementById("<ID_OF_IMAGE_TAG>").src=url;
}

然后从对话框中,在图片上传后调用这个函数:

top.refreshImage("<URL_OF_NEWLY_UPLOADED_IMAGE");

【讨论】:

    【解决方案2】:

    如果我正确理解了您的问题,并假设您拥有要加载到页面中的图片网址

    您可以简单地创建一个图像标签 将其 src 属性设置为图像 url 然后放到你的页面上

    喜欢这个

    node = document.createElement('img');
    node.setAttribute('src', imageUrl);
    list.appendChild(node);
    

    你可以看到这个here

    【讨论】:

      猜你喜欢
      • 2012-03-06
      • 1970-01-01
      • 2011-12-14
      • 1970-01-01
      • 1970-01-01
      • 2012-06-15
      • 2021-11-16
      • 2021-10-29
      • 1970-01-01
      相关资源
      最近更新 更多