【问题标题】:Remove frames and loading content into the div删除框架并将内容加载到 div
【发布时间】:2014-10-01 21:31:27
【问题描述】:

无论如何我可以卸载已在 iframe 中加载的页面吗?它可能会删除 windows 并将其他页面的内容加载到div?

我在主屏幕上使用 iframe 调用文件left_nav.php

<iframe src='left_nav.php' name='left_nav' class="daemon" scrolling="auto" frameborder='0' height='100%' width="100%"></iframe>

left_nav函数和方法中从其他页面加载内容如main_title.php

在下面的left_nav.php 文件中创建的函数

setEncounter(edate, eid, frname) {
  if (eid == active_encounter) return;
  if (!eid) edate = '<?php xl('None','e'); ?>';
  var str = '<b>' + edate + '</b>';
  setDivContent('current_encounter', str);
  active_encounter = eid;
  encounter_locked=isEncounterLocked(active_encounter);
  reloadEncounter(frname);
  syncRadios();
  var encounter_block = $(parent.Title.document.getElementById('current_encounter_block'));
  var encounter = $(parent.Title.document.getElementById('current_encounter'));
  var estr = '<a href=\'javascript:;\' onclick="parent.left_nav.loadCurrentEncounterFromTitle()">       <b>' + edate + ' (' + eid + ')</b></a>';
  encounter.html( estr );
  encounter_block.show();
}


function loadCurrentEncounterFromTitle() {
  top.restoreSession();
  top.frames[ parent.left_nav.getEncounterTargetFrame('enc')     ].location='../patient_file/encounter/encounter_top.php';
}


function getEncounterTargetFrame( name ) {
  var bias = <?php echo $primary_docs[ 'enc'  ][ 1 ]?>;
  var f = document.forms[0];
  var r = 'RTop';
  if (f.cb_top.checked) {
    if ( bias == 2 ) {
        r = 'RTop';

    }
  }
  return r;
}

这是left_nav中的js脚本,用于加载loadFrame2

function loadFrame2(fname, frame, url) {
  var usage = fname.substring(3);
  if (active_pid == 0 && usage > '0') {
    alert('<?php xl('You must first select or add a visitor.','e') ?>');
    return false;
  }
  if (active_encounter == 0 && usage > '1') {
    alert('<?php xl('You must first select or create an encounter.','e') ?>');
    return false;
  }
  if (encounter_locked && usage > '1') {
    alert('<?php echo xls('This encounter is locked. No new forms can be added.') ?>');
    return false;
  }
  var f = document.forms[0];
  top.restoreSession();
  var i = url.indexOf('{PID}');
  if (i >= 0) url = url.substring(0,i) + active_pid + url.substring(i+5);
  if(f.sel_frame) {
    var fi = f.sel_frame.selectedIndex;
    if (fi == 1) frame = 'RTop'; else if (fi == 2) frame = 'RBot';
  }
  if (!f.cb_bot.checked) frame = 'RTop';
  top.frames[frame].location = '<?php echo "$web_root/interface/" ?>' + url;
  if (frame == 'RTop') topName = fname;
  return false;
}

main_title.php 文件中创建的函数。

function toencounter(rawdata) {
  document.getElementById('EncounterHistory').selectedIndex=0;
  if(rawdata=='') {
    return false;
  } else if (rawdata=='New Encounter') {
    top.window.parent.left_nav.loadFrame2('nen1','RBot','forms/newpatient/new.php?   autoloaded=1&calenc=')
    return true;
  } else if (rawdata=='Past Encounter List') {
    top.window.parent.left_nav.loadFrame2('pel1','RBot','patient_file/history/encounters.php')
    return true;
  }
  var parts = rawdata.split("~");
  var enc = parts[0];
  var datestr = parts[1];
  var f = top.window.parent.left_nav.document.forms[0];
  frame = 'RBot';
  if (!f.cb_bot.checked) {
    frame = 'RTop';
  }

  parent.left_nav.setEncounter(datestr, enc, frame);
  top.frames[frame].location.href  = '../patient_file/encounter/encounter_top.php?set_encounter=' +     enc;
}

【问题讨论】:

  • 您解释了问题,但您能否阐明当前行为是什么以及它与预期结果有何不同?
  • 当我使用 php include 调用 left_nav 文件时,就像在 iframe 中与 src 一起使用一样。它根本不会加载其他框架中的内容,例如页面顶部的遭遇访问无法正常加载,甚至会根据遭遇访问关闭许多页面功能。

标签: javascript php html frames


【解决方案1】:

在设置新 iframe 源的最后一行代码中,您使用的是 href 属性而不是 src。由于 iframe 没有 href 属性,这可以解释缺乏结果。

top.frames[frame].src  = '../patient_file/encounter/encounter_top.php?set_encounter=' +     enc;

换成那个试试看是否有效。

【讨论】:

  • 但我想删除 iframe 并使用 div 来调用和加载内容,使用 php include 删除框架的主要原因仅仅是因为 left_nav 文件是在左侧创建菜单导航的位置和我想改变左边以使菜单水平,这对 iframe 不太好。
  • 那为什么要以 iframe 开头呢?
  • 正如我之前提到的,左侧的框架用于菜单并记住依赖于菜单和框架的遭遇功能,但现在我想让菜单从左到上,这就是移除框架的原因
猜你喜欢
  • 2014-11-22
  • 1970-01-01
  • 1970-01-01
  • 2012-01-10
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多