<input type=button name=edit value=添加 onclick=javascript:window.open('scoreadd.php?,'_blank','width=600,height=350,top=150,left=250','toolbar=no,menubar=no,scrollbars=yes')>
scoreadd.php是用来添加按钮的。
里面有这么一个FROM:
<form name=scoreadd action="scoreadd.php?bjscore_tbname=<?echo $bjscore_tablename;?>&bjstu_tablename=<?echo $bjstu_tablename;?>" method=post onsubmit="return userconfirm(this)" onclick="window.opener.location.reload()">
成绩:<input name=score onfocus=this.select() onMouseOver=this.focus()></input>
排名:<input name=paiming onfocus=this.select() onMouseOver=this.focus()></input>
<input type=submit value=确定 >
<input type=reset value=重写>
</form>
<script>
function userconfirm(f)
{
var s="学号:"+f.stuname.value+"\n成绩:"+f.score.value+"\n排名:"+f.paiming.value+"\n确认要添加吗?"
if(confirm(s)) return true
return false
}
onclick="window.opener.location.reload()"一句当然是为了让父窗口刷新的。
onsubmit="return userconfirm(this)"是为了在提交之前弹出一个确定的消息框。
现在问题是,如果按照上面的代码把onclick="window.opener.location.reload()"放在FORM里,那么不等你确定那个消息框,父窗口就已经在添加数据之前刷新了。该怎么办呢。我后来把window.opener.location.reload()放到function里面,即:
<script>
function userconfirm(f)
{
var s="学号:"+f.stuname.value+"\n成绩:"+f.score.value+"\n排名:"+f.paiming.value+"\n确认要添加吗?"
if(confirm(s))
{window.opener.location.reload()
return true
} //或者两句的顺序换一下
return false
}
</script>
可是这样还是不行。高手请指教啊!!!谢谢了
8 个解决方案
#1
{
window.opener.location.reload();
return true;
}
最明显的错误就是你没有加分号!你先改改,看还有没有错误!
window.opener.location.reload();
return true;
}
最明显的错误就是你没有加分号!你先改改,看还有没有错误!
#2
你要通过页面处理表单的吧?
php:
<?……//这里是你的表单处理程序
echo "<script>opener.location.reload()</script>";
?>
asp:
<%……'这里是你的表单处理程序
response.write "<script>opener.location.reload()</script>"
%>
php:
<?……//这里是你的表单处理程序
echo "<script>opener.location.reload()</script>";
?>
asp:
<%……'这里是你的表单处理程序
response.write "<script>opener.location.reload()</script>"
%>
#3
回复人: Estyle(靳田) ( ) 信誉:110 2003-04-20 17:52:00 得分:0
{
window.opener.location.reload();
return true;
}
最明显的错误就是你没有加分号!你先改改,看还有没有错误!
呵呵~~
js不加";"并不算错。
错就错在他搞错了程序执行的时间。
{
window.opener.location.reload();
return true;
}
最明显的错误就是你没有加分号!你先改改,看还有没有错误!
呵呵~~
js不加";"并不算错。
错就错在他搞错了程序执行的时间。
#4
to: xinyunyishui(心云意水)
谢谢,今天又丢一次脸。不过好在丢脸总算长见识!不吃亏。
谢谢,今天又丢一次脸。不过好在丢脸总算长见识!不吃亏。
#5
倒!没那么严重吧……
#6
麻烦大哥直接把我的代码复制一下,然后将opener.location.reload()放在正确的位置好吗?就是将我的全部代码修改后都贴出来.我基础不好,还不能解决那个问题.谢谢了!!!!!!!!
#7
去掉onclick="window.opener.location.reload()"
在新打开的一页中
<body onload="window.opener.location.reload()">
在新打开的一页中
<body onload="window.opener.location.reload()">
#8
mark一下~
#1
{
window.opener.location.reload();
return true;
}
最明显的错误就是你没有加分号!你先改改,看还有没有错误!
window.opener.location.reload();
return true;
}
最明显的错误就是你没有加分号!你先改改,看还有没有错误!
#2
你要通过页面处理表单的吧?
php:
<?……//这里是你的表单处理程序
echo "<script>opener.location.reload()</script>";
?>
asp:
<%……'这里是你的表单处理程序
response.write "<script>opener.location.reload()</script>"
%>
php:
<?……//这里是你的表单处理程序
echo "<script>opener.location.reload()</script>";
?>
asp:
<%……'这里是你的表单处理程序
response.write "<script>opener.location.reload()</script>"
%>
#3
回复人: Estyle(靳田) ( ) 信誉:110 2003-04-20 17:52:00 得分:0
{
window.opener.location.reload();
return true;
}
最明显的错误就是你没有加分号!你先改改,看还有没有错误!
呵呵~~
js不加";"并不算错。
错就错在他搞错了程序执行的时间。
{
window.opener.location.reload();
return true;
}
最明显的错误就是你没有加分号!你先改改,看还有没有错误!
呵呵~~
js不加";"并不算错。
错就错在他搞错了程序执行的时间。
#4
to: xinyunyishui(心云意水)
谢谢,今天又丢一次脸。不过好在丢脸总算长见识!不吃亏。
谢谢,今天又丢一次脸。不过好在丢脸总算长见识!不吃亏。
#5
倒!没那么严重吧……
#6
麻烦大哥直接把我的代码复制一下,然后将opener.location.reload()放在正确的位置好吗?就是将我的全部代码修改后都贴出来.我基础不好,还不能解决那个问题.谢谢了!!!!!!!!
#7
去掉onclick="window.opener.location.reload()"
在新打开的一页中
<body onload="window.opener.location.reload()">
在新打开的一页中
<body onload="window.opener.location.reload()">
#8
mark一下~