【问题标题】:refresh multiple iframes based on a variable "id" from one button通过一个按钮根据变量“id”刷新多个 iframe
【发布时间】:2011-08-15 02:25:21
【问题描述】:

我有一个页面上有多个 iframe 的 php 页面。

如果您愿意,这些 iframe 会包含一个按钮。当有人单击“按钮”时,我会触发 javascript 以刷新页面上 id=xxx 的另一个框架,这可以正常工作。问题是我希望能够刷新页面上的多个框架,它们都不能具有相同的 ID 值,所以这该怎么做。

<iframe id="12345"></iframe>
<iframe id="12345"></iframe>
<iframe id="12345"></iframe>

这适用于单个 iframe(我知道您不能在一个文档上拥有多个相同的 id。)这个想法是想做这样的事情。

parent.document.getElementById('12345').contentWindow.location.reload();

抱歉这个草率的例子,我醒了很久很久。 :)

【问题讨论】:

    标签: php javascript iframe refresh


    【解决方案1】:

    只需分配不同的id并调用

    parent.document.getElementById(customId).contentWindow.location.reload();
    

    多次,每次要重新加载的每个 iFrame 一次。

    【讨论】:

      【解决方案2】:
      /* include in parent */
      function reloadIframes( ) {
          var i = argument.length;
          while ( i-- ) {
              document.getElementById( arguments[i] ).contentWindow.location.reload()
          }
      }
      /* In an iframe (probably in the onclick of your button) */
      parent.reloadIframes( 'id1', 'id2' );
      

      【讨论】:

        【解决方案3】:

        您有两个选择,要么根据需要遍历所有 id 重新加载...

        或者,如果您正在重新加载 ALL 帧,您可以使用这个:

        for(var i=0;i<window.frames.length;i++){
          window.frames[i].location.reload();
        }
        

        【讨论】:

          【解决方案4】:

          这就是我最终使用的,效果很好!我制作的 iframe 如下:

          <iframe name="ifwXXXX"></iframe>
          

          然后我可以使用下面的代码来获取所有具有相同名称的 iframe 并循环遍历它们并刷新它们。

          function refreshwant(ifid,lid){
              parent.document.getElementById('pfid'+lid+'').contentWindow.location.reload();
              var x = parent.document.getElementsByName('ifw'+ifid+'');
          for(var i = 0; i < x.length; i++)
          {
              x[i].contentWindow.location.reload();    
          }
          }
          

          感谢所有帮助,希望这也可以帮助别人。!

          【讨论】:

            猜你喜欢
            • 2018-04-23
            • 2011-07-09
            • 2016-12-14
            • 2019-07-17
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            相关资源
            最近更新 更多