帮我看看源码,双击window.opener.document怎么回传到父页面多个值,在线等!!!!!

paulpeng8 2009-09-17 10:34:10
请看下面的源码,能打开子页面,就是双击子页面的某项目没有反应而不能回传值。新人问题啊。应该怎样传值才是正确呢,请大家多多指教


A.ASP 父页面
.......
<form action="DD_Save.asp" method="post" name="form1" onSubmit="return Form1_Validator(this)">

<TABLE width="100%" border=0 align="center" cellPadding=2 cellSpacing=1 class="Table01">
<TBODY>

<TR>
<TD class="DD_left">型号:</TD>
<TD class="DD_right">


<input name="part_number" readonly onClick="JavaScript:window.open('B.asp?form=Form1&field=partnum&field2=part_number&field3=manufacturer&field4=package&field5=packaging&field6=description','','directorys=no,toolbar=no,status=no,menubar=no,scrollbars=yes,resizable=no,width=820,height=500,top=170,left=161');" style="width:80px" value="单击选择Part">
品牌:
<input type="text" name="manufacturer" style="width:80px" readonly>
封装:
<input type="text" name="package" style="width:80px" readonly>
包装:
<input type="text" name="packaging" style="width:80px" readonly>
描述:
<input type="text" name="description" style="width:80px" readonly>
<input type="hidden" name="partnum">
</TD>
</TR>
......

B.ASP 子页面
......
<%If Not(RS_sel.Bof and RS_sel.Eof) Then%>
<form name="Form1" method="post" action="">
<TABLE width="100%" border=0 align="center" cellPadding=0 cellSpacing=1 class="Table01">
<TBODY>
<TR>
<TD width="16%" class="HeadTD">型号</TD>
<TD width="11%" class="HeadTD">牌子</TD>
<TD width="8%" class="HeadTD">类型</TD>
<TD width="7%" class="HeadTD">封装</TD>
<TD width="10%" class="HeadTD">包装</TD>
<TD width="19%" class="HeadTD">描述</TD>
<TD width="19%" class="HeadTD">备注</TD>
<TD width="4%" class="HeadTD">修改</TD>
<TD width="3%" class="HeadTD">
<input name="chkall" type="checkbox" id="chkall" value="select" onClick="CheckAll(this.form)" class="sk_box" /></TD>
</TR>
<%
For P_I = 1 to Page_Infonum
If RS_sel.Eof Then
Exit For
End If
%>
<TR class="HeadTD00_000" onMouseOver="this.style.backgroundColor = '#ECECFF';"
onMouseOut="this.style.backgroundColor = '#FFFFFF';" <%if request("form")<>"" then%>onDblClick="window.opener.document.form.field.value='<%=rs_sel("id")%>';window.opener.document.form.field2.value='<%=rs_sel("FJ_PART_NUMBER")%>';window.opener.document.form.field3.value='<%=rs_sel("SK_Brand")%>';window.opener.document.form.field4.value='<%=rs_sel("FJ_PACKAGE")%>';window.opener.document.form.field5.value='<%=rs_sel("FJ_PACKAGING")%>';window.opener.document.form.field6.value='<%=rs_sel("FJ_Description")%>';window.close();"<%else%>onDblClick="javascript:var win=window.open('Views.asp?id=<%=Rs_sel("ID")%>','详细信息','width=700,height=500,top=170,left=161,toolbar=no,location=no,directories=no,status=no,menubar=no,resizable=yes,scrollbars=yes'); win.focus()"<%end if%>>
<TD class="HeadTD02"><font color="red"><%=left(RS_sel("FJ_PART_NUMBER"),10)%></font></TD>
<TD class="HeadTD01"><%=RS_sel("SK_Brand")%></TD>
<TD class="HeadTD01"><%=RS_sel("FJ_PART_TYPE")%></TD>
<TD class="HeadTD01"><%=RS_sel("FJ_PACKAGE")%></TD>
<TD class="HeadTD02"><%=RS_sel("FJ_PACKAGING")%></TD>
<TD class="HeadTD01"><%=RS_sel("FJ_Description")%></TD>
<TD class="HeadTD01"><%=RS_sel("FJ_CONTENT")%></TD>
.....
...全文
1258 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
paulpeng8 2009-09-18
  • 打赏
  • 举报
回复
等晚上回去试下,先谢谢兄弟。
paulpeng8 2009-09-18
  • 打赏
  • 举报
回复
各位如果还有更好的方法请告知。
paulpeng8 2009-09-18
  • 打赏
  • 举报
回复
已经解决了,谢谢HOOKEE
hookee 2009-09-17
  • 打赏
  • 举报
回复
我是指子页面中window.opener.document.form.field.value 这些地方没有名字为field的控件
要改成 opener.document.form1.part_number.value=''
opener.document.form1.manufacturer.value=''
opener.document.form1.package.value=''
...之类的吧
---------------------------
A向B传值
window.open(".....=" + document.form1.part_number.value + "$xxxx=" + document.form1.manufacturer.value + ".....");

paulpeng8 2009-09-17
  • 打赏
  • 举报
回复
改成opener.document.form1 ,子页面执行了<%else%>onDblClick="javascript:var win=window.open('Views.asp?id= <%=Rs_sel("ID")%>','详细信息','width=700,height=500,top=170,left=161,toolbar=no,location=no,directories=no,status=no,menubar=no,resizable=yes,scrollbars=yes'); win.focus()" 这一步了,还是不能传回值到父页面啊
paulpeng8 2009-09-17
  • 打赏
  • 举报
回复
父页面需要自动填入5个值,就是<input name="part_number" readonly onClick="JavaScript:window.open('B.asp?form=Form1&field=partnum&field2=part_number&field3=manufacturer&field4=package&field5=packaging&field6=description','','directorys=no,toolbar=no,status=no,menubar=no,scrollbars=yes,resizable=no,width=820,height=500,top=170,left=161');" style="width:80px" value="单击选择Part">
品牌:
<input type="text" name="manufacturer" style="width:80px" readonly>
封装:
<input type="text" name="package" style="width:80px" readonly>
包装:
<input type="text" name="packaging" style="width:80px" readonly>
描述:
<input type="text" name="description" style="width:80px" readonly
那么要怎样传值给B页面呢
hookee 2009-09-17
  • 打赏
  • 举报
回复
window.opener.document.form 改成 opener.document.form1 因为父窗口表单名字是form1
另外 field field2 field3 ...之类的哪儿来的?父窗口表单中有吗?
paulpeng8 2009-09-17
  • 打赏
  • 举报
回复
还是自己坐沙发算了,各位知道解决方法的请帮忙我啊,有别的更好的方法那就更谢谢啦!!!

87,993

社区成员

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

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