JAVASCRIPT中,window.form1.submit();window.close();两句,经常只执行CLOSE,怎么办?

tanyx 2003-01-13 01:59:21
这两句放在一起时,经常并不执行提交,而只是执行WINDOW.CLOSE() ?怎么办?
...全文
642 17 打赏 收藏 转发到动态 举报
写回复
用AI写文章
17 条回复
切换为时间正序
请发表友善的回复…
发表回复
tanyx 2003-01-27
  • 打赏
  • 举报
回复
另外,几位朋友说把CLOSE()写在目标页面里,那不是把目标页面关闭了吗?我的目的正是要关闭原页面,而刷新目标页面啊。
tanyx 2003-01-27
  • 打赏
  • 举报
回复
to visioz(e):是放在要提交的页面里啊,也是最后一行(一共就两行),可是被CLOSE掉了,于是提交不成。

to qiangsheng(立足中原辐射西北) :你对问题估计的很对,提出的解决方案也正和我的想法,我也是这样做的,可惜没有解决问题,提交后还是经常先被CLOSE掉,不能到达目标程序。不知道提交时,form1.submit()和document.form1.submit()和opener.form1.submit()有什么区别?

好象原理是这样的:我在TCP/IP中截获提交信息时发现,提交到另外一个页面时,是用两个TCP/IP实现的,如果CLOSE()先被执行完毕(当然很快),就立即关闭另外一个通讯(子)端口,于是,只有偶然CLOSE()动作慢了时,才能被正确提交。

说用IFRAME的朋友说得对,用IFRAME一定是可以解决的。但是我觉得这是一个简单的关闭窗口的提交,是否非用复杂的代换技术才能实现呢?
qiangsheng 2003-01-20
  • 打赏
  • 举报
回复
可以参考一下下面的贴子
http://expert.csdn.net/Expert/topic/1376/1376207.xml?temp=.1290247
tanyx 2003-01-18
  • 打赏
  • 举报
回复
不行,我要提交到一个页面,该页面已存在(或打开),不是提交到自己,因为提交的结果还要刷新目标页面。
visioz 2003-01-18
  • 打赏
  • 举报
回复
两种方法可行
为了保证close在提交之后

可以把close()写到ASP或者JSP等要提交到的脚本文件里
放在最后一行

或者建立iframe,这个比较好用
设置display:none,这样不影响任何页面效果,也提交上去了
gavinzhou 2003-01-18
  • 打赏
  • 举报
回复
老大,能不能把问题描述清楚点,qiangsheng一样,否则,大家猜来猜去,怎么帮你!我估计再也不会回这样的帖了!
xuxijian2003 2003-01-18
  • 打赏
  • 举报
回复
在你javascript中就写form1.submit();就可以呀,为何还写什么window.form1.submit();还有document.form1.submit();
qiangsheng 2003-01-18
  • 打赏
  • 举报
回复
我想你的要求应该是这样,有一个窗口a,它打开了另一个窗口b,你的js是在b里写的,要求执行a里的form1的submit事件,同时把b自己关掉。不知道对不对。
如果是的话,就应该写成这样:
<a href="javascript:opener.form1.submit();window.close()">ssss</a>

如果不对,就当我没来过。
seeu1688 2003-01-18
  • 打赏
  • 举报
回复
<a href="javascript:window.form1.submit();window.close()">ssss</a>

逻辑有点问题...
向本窗口提交内容,页面会转向submit的action页面,但action页面仍然是在本窗口的,你却把他close掉了。

action没有了载体,操作怎么会成功呢?
你的window.close()最好写在你的action页面里面
tata_1980 2003-01-18
  • 打赏
  • 举报
回复
给一个方法:
在提交页面放一个iframe(name=iframe1),然后另iframe的height=0,即隐藏了:<IFRAME src="about:blank" height=0 width="100%" name=iFrame1></IFRAME>
然后设置form:
<form action="the page your opened" target="iframe1"></form>

这样提交后你不会转向另一个页面,而数据已经过去了,你再关掉本页面
wangyime 2003-01-15
  • 打赏
  • 举报
回复
在接受提交数据页面的最后一行写
response.write "<script>window.close()</script>"
这样就可以保证提交成功
tanyx 2003-01-15
  • 打赏
  • 举报
回复
怎么一个人一个主意啊?哪个是正确的?
我的提交是:
<a href="javascript:window.form1.submit();window.close()">ssss</a>
当然不能打开新窗口,是提交到现有窗口中去。
genuis 2003-01-13
  • 打赏
  • 举报
回复
if (window.form1.submit())
window.close()
dylanOK 2003-01-13
  • 打赏
  • 举报
回复
把window.close() 放到action 的结果页面里。
方工 2003-01-13
  • 打赏
  • 举报
回复
document.form1.submit()
wsj 2003-01-13
  • 打赏
  • 举报
回复
<form name=form1 target="_blank">
利而不害 2003-01-13
  • 打赏
  • 举报
回复
window.form1.submit();setTimeout("window.close()",2000)

87,907

社区成员

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

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