如何实现一个按钮,先后提交两个表单数据(先提交第二个表单,再提交第一个表单)?

时间:2021-11-10 18:24:58
为了方便客户发布信息,我想在一个页面上同时展现两个表单。当客户填写信息后,只按一个按钮,先完成注册,紧接着完成信息发布。
  这样要求实现:一个按钮,先提交bb框架下的frmAddNew1表单,处理bb.asp,完成注册。完成后,自动触发<body>标签中 的onunlaod事件,激活其中的go()函数,进一步激活父框架下的aa框架下的frmAddNew表单,并提交,处理aa.asp,完成信息发布。
  我的代码是:

<frameset rows="126,*" cols="*" framespacing="0" frameborder="no" border="0">
  <iframe src="aa.asp" name="aa" id="aa" scrolling="No" noresize="noresize" > </iframe>
  <iframe src="bb.asp" name="bb" id="bb"></iframe>
</frameset>

  其中 aa.asp的代码:
<form   name="frmAddNew" method="post"  action=aa_tj.asp  enctype="multipart/form-data" > 
      <input   type=text> 
      <input   type=button name="btnPubs" value="发布信息">
    </form> 


  其中 bb.asp的代码:
<script   language= "javascript "> 
function   go(){                                                                   
document.parent.aa.frmAddNew.submit() 

</script> 

<body  onunload=go()> 
<form   name="frmAddNew1" method="post"  action=bb_tj.asp> 
        <input   type=text> 
        <input   type=button  name="btnPubs" value="发布信息">
    </form> 
</body>

但是,测试结果是:无法激活。
  我有些稀里糊涂:
  1、那段javascript 代码,是否正确?
  2、这个代码,究竟应该放在那个文件中?aa.asp;  bb.asp;  aa_tj.asp;  bb_tj.asp 还是第一级的框架文件中?
恳请高手指点一下!

7 个解决方案

#1


参考一些frame之间的相互访问的例子
http://topic.csdn.net/t/20040701/21/3138902.html

#2



<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
<HEAD>
<TITLE> New Document </TITLE>
<script   language= "javascript "> 
function go(){                                                                   
var input = document.getElementsByName("frmAddNew");
for (var i = 0; i < input.length; i++) {
document.forms[i].submit();
}


</SCRIPT>

</HEAD>

<BODY>

<form   name="frmAddNew" method="post"  action=aa_tj.asp  enctype="multipart/form-data" > 
      <input   type=text> 
      <input   type=button name="btnPubs" value="发布信息" onClick="go()">
    </form> 

<form   name="frmAddNew" method="post"  action=bb_tj.asp> 
        <input   type=text> 
        <input   type=button  name="btnPubs" value="发布信息" onClick="go()">
    </form> 

</BODY>
</HTML>

#3


iframe 和 AJAX 都很好实现

#4


2  楼 xk1126的思路很好!

  但是,还不能实现我要求的功能。

  主要是由于我没有表达清楚。我的目的是:
  “
  第一步、点按:框架BB下表单BB中的按钮,
  第二步、先提交bb框架下的frmAddNew1表单,处理bb.asp,提交处理bb_tj.asp完成注册,自动登录完成后。
  第三步、再自动触发<body>标签中 的onunlaod事件,激活其中的go()函数,”

  并不是:在提交处理 bb.asp 的同时,激活go()函数!

  恳请帮忙看看:应该怎么实现?

  

#5


我说的是iframe,而不是frameset
把表单提交给一个iframe,并且在这个aa_tj.asp里用
response.write "<script>parent.go()</script>"
这个来触发

#6


  已经按照:chinmo (藏*无限) 的方法调通了!!!
  非常感谢!

  同时,也感谢其他弟兄的热心帮助!

#7


该回复于2011-11-14 10:16:01被版主删除

#1


参考一些frame之间的相互访问的例子
http://topic.csdn.net/t/20040701/21/3138902.html

#2



<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
<HEAD>
<TITLE> New Document </TITLE>
<script   language= "javascript "> 
function go(){                                                                   
var input = document.getElementsByName("frmAddNew");
for (var i = 0; i < input.length; i++) {
document.forms[i].submit();
}


</SCRIPT>

</HEAD>

<BODY>

<form   name="frmAddNew" method="post"  action=aa_tj.asp  enctype="multipart/form-data" > 
      <input   type=text> 
      <input   type=button name="btnPubs" value="发布信息" onClick="go()">
    </form> 

<form   name="frmAddNew" method="post"  action=bb_tj.asp> 
        <input   type=text> 
        <input   type=button  name="btnPubs" value="发布信息" onClick="go()">
    </form> 

</BODY>
</HTML>

#3


iframe 和 AJAX 都很好实现

#4


2  楼 xk1126的思路很好!

  但是,还不能实现我要求的功能。

  主要是由于我没有表达清楚。我的目的是:
  “
  第一步、点按:框架BB下表单BB中的按钮,
  第二步、先提交bb框架下的frmAddNew1表单,处理bb.asp,提交处理bb_tj.asp完成注册,自动登录完成后。
  第三步、再自动触发<body>标签中 的onunlaod事件,激活其中的go()函数,”

  并不是:在提交处理 bb.asp 的同时,激活go()函数!

  恳请帮忙看看:应该怎么实现?

  

#5


我说的是iframe,而不是frameset
把表单提交给一个iframe,并且在这个aa_tj.asp里用
response.write "<script>parent.go()</script>"
这个来触发

#6


  已经按照:chinmo (藏*无限) 的方法调通了!!!
  非常感谢!

  同时,也感谢其他弟兄的热心帮助!

#7


该回复于2011-11-14 10:16:01被版主删除