0

我正在尝试使用 Javascript 更改页面加载时相邻框架的位置。

我有一个带有框架集的页面:

<html lang="en">
<HEAD>
<link rel="icon" type="image/x-icon" href="favicon.ico" />
<script type="text/javascript">
function confirm() {
  //Code to execute before page close
  return '[close message]';
}
window.onbeforeunload=confirm;
</script>

<frameset cols="30%, 70%" FRAMEBORDER=NO FRAMESPACING=0 BORDER=0>

<frame name="leftFrame" src="control.php" scrolling="no">
<frame name="right" id="right" src="q.php">
</frameset>
</head>
</html>

我的leftFrame是control.php,它有一个动作也是control.php的表单:

<!-- sample form on control.php -->
<form method="post" action="control.php">
<input ../>
<input type="submit" />
</form>

这个想法是,每次提交表单时,都应该将正确的框架重新加载回 q.php:

<script language="javascript">
function refresh() {
    parent.right.location.href ="q.php";
}
</script>
</head>
<body onLoad="refresh();">

但这不起作用。正确的框架保持原样,不会变回 q.php。换句话说refresh(),它不起作用。

谁能告诉我我做错了什么,或者更好的方法?

4

2 回答 2

0

而不是onload我用过onsubmit。我的猜测是它不起作用,onload因为页面已经加载。

于 2012-11-19T06:34:57.353 回答
-1

好久没看到用过的相框了,

我认为问题在于您调用框架的方式,请尝试

top.frames["right"].location.href="q.php";
于 2012-11-19T06:05:27.537 回答