form submit的问题,解决了立马给分,3Q

flyinwindok 2004-03-27 11:47:33
一个form的submit除了把form的action指向页面自己以外,有什么方法可以不打开新窗口啊,因为提交的目是为了进行JSP处理,处理后的结果更新本页面中一些input元素的值

我现在只知道可以把action指向页面本身自己,但这样,就不得不把所有处理代码都集中这个页面上

听说在本页面里用iframe可以做到,我昨晚这样做的:

定义iframe:<iframe name="noneIFrame" src="" height="0" width="678" frameborder="0"></iframe>

form语句:<FORM name="registered" method="post">
提交触发的语句:<select name="registeredUser" onChange="setValue()">

setValue函数:setValue(){
//其它数据处理语句
document.registered.target=noneIFrame;
document.registered.action="newUser.jsp";//newUser.jsp即现在这个页面本身
document.registered.submit();}

这样做,数据处理是对的,但IE会再打开一个newUser.jsp窗口显示更新后的数据
为什么不在那个height为0的iframe里处理呢,怎么做才能不会出现新窗口,也不让action中的地址替换现有页面的地址,但能进行submit;iframe这样用不对吗

帮个忙撒,3Q
...全文
100 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
flyinwindok 2004-03-27
  • 打赏
  • 举报
回复
多谢楼上两位的回答,搞清楚了,哈哈,
原来在我的函数中这一句document.registered.target=noneIFrame;
noneIFrame上没有打引号,而以前在<form >里写得时候我一般都会其中的属性值打引号;没打引号的时候可能不把这个noneIFrame当成本页面的一个iframe了,所以会新开一个窗口
再次谢谢两位,
MarsZ 2004-03-27
  • 打赏
  • 举报
回复
你的iframe
<iframe name="noneIFrame" src="" height="0" width="678" frameborder="0"></iframe>

js应该写成
document.registered.target="noneIFrame";
document.registered.action="newUser.jsp";//newUser.jsp即现在这个页面本身
document.registered.submit();}

或者form里直接写<form target="noneIFrame"...
lhbf 2004-03-27
  • 打赏
  • 举报
回复
如果你用struts可以很自然地实现你的想法。

81,092

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧