动态改变表单提交对象的怪异现象【100分】 MSDN 的文档说当重新为 form 指定了 target 属性后,如果提交时没有发现有窗口的名字跟 target 所指定的一样,就会新打开一个窗口,所以我觉得一定是用 window.open 打开的窗口没有跟为它指定的名字绑定,或者表单提交的时候在查找指定名称的窗口时出了问题。请各位高手指点,还有就是有没有其它替代的方法也能达到这个目的? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 是 IE 5,但别的 IE 5 也没有这个问题,这是这个出问题的 IE 打过很多安全补丁,而其它的没有,会不会是这些补丁搞得?可是这样我的程序就没法工作了啊:(因为我页面中的同一个表单要向不同的 cgi 提交,而且结果页面要开一个小窗口显示,所以就这么做了,还有什么其它办法吗? 5.0/5.5/6.0sp1(xpvlk下)/6.0sp1(2003)我这里怎么都ok?5.0/5.5是98/me的,都打过所有补丁。没有问题啊…… <script>……Form.action = "test.cgi";Form.method = "get";Form.target = "NewTarget";……</script><form onsubmit='window.open( "", "NewTarget", "toolbar=no" )'> 摸着石头过一次河:把这一句话window.open( "", "NewTarget", "toolbar=no" );改成这样的再试试window.open( "about:blank", "NewTarget", "toolbar=no" ); to xinyunyishui(心云意水):我这里是 2000,还有就是我没说清楚,不是操作系统的 SP,而是 IE 的安全补丁,而且打了很多!to JK_10000(JK):我已经做过很多试验了,包括你说的这种:)现在已经可以肯定就是在提交之前我指定了新的 target,而一旦提交IE发现没有名为NewTarget的窗口,所以它就又打开了一个普通窗口,可其实那个名为NewTarget的窗口其实已经打开了:( Form.action = "test.cgi";Form.method = "get";Form.target = "NewTarget";window.open( "about:blank", "NewTarget", "toolbar=no" ); 另外你的FORM的名最好不要用Form这么简单。 应该是一个时间差的问题, 在 name=NewTarget 的新网页被 open 出来之前表单就提交了, 而在表单提交的时候由于没有 name=NewTarget 的网页存在(还没有被打开), 所以自然就提交到了一个普通的新页里去了.所以你可以将window.open语句放到 onsubmit 事件里去, 代码如: possible_Y Form.action = "test.cgi";Form.method = "get";winObject = window.open("","NewTarget","toolbar=no")if ((winObject==null)||(winObject==undefined)) return;Form.target = winObject.nameForm.submit() to meizz(梅花雨疏影横斜):应该不是你说的这个原因,我在 open 之后加了一段长延时也不行 分享裁剪图片代码 求验证用户名的正则表达式 一个javascript的问题 一个iframe调用另一个iframe里面的JS 关于用JS代码编写触发键盘按钮的问题 100分速求关于全选粘贴的功能 请问以下的JS文件为什么不能显示 在父页面中如何获得嵌在其中的iframe中的值?急,在线等! 请指示:网页中链接某文件,想直接在当前位置运行该程序,怎么办? 点击层中的图片,如何获取鼠标当前的相对x/y位置? 文档对象的问题 一个怪问题!iFrame内的页面见设置了自动刷新,但如果父页面一按超链,刷新就莫名其妙停止?
……
Form.action = "test.cgi";
Form.method = "get";
Form.target = "NewTarget";
……
</script>
<form onsubmit='window.open( "", "NewTarget", "toolbar=no" )'>
把这一句话
window.open( "", "NewTarget", "toolbar=no" );改成这样的再试试
window.open( "about:blank", "NewTarget", "toolbar=no" );
to JK_10000(JK):我已经做过很多试验了,包括你说的这种:)
现在已经可以肯定就是在提交之前我指定了新的 target,而一旦提交IE发现没有名为NewTarget的窗口,所以它就又打开了一个普通窗口,可其实那个名为NewTarget的窗口其实已经打开了:(
Form.method = "get";
Form.target = "NewTarget";
window.open( "about:blank", "NewTarget", "toolbar=no" );
Form.method = "get";
winObject = window.open("","NewTarget","toolbar=no")
if ((winObject==null)||(winObject==undefined)) return;
Form.target = winObject.name
Form.submit()