用 showModalDialog 方法回传数据到父页中去

本文介绍如何在 ASP.NET 中使用 showModalDialog 实现父页面与弹出窗口之间的数据交互,包括通过 JavaScript 函数传递参数及接收返回值。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

 

parent.aspx 做为父页,html 端代码如下:

 

<script language="javascript">
        
function select_value()
        {
            
var val = document.getElementById("StrCode").value;
            
var text = document.getElementById("StrName").value;
            
var returnvalue = showModalDialog("StreetTreeViewModule.aspx?selectval="+val+"&selecttext="+text,"","dialogHeight:500px;dialogWidth:580px");
            
if(returnvalue == undefined){ return false;}
            
            document.getElementById(
"StrCode").value = returnvalue[1];
            document.getElementById(
"StrName").value = returnvalue[3];
            document.getElementById(
"Textbox17").value = returnvalue[2]+">>"+returnvalue[3];
        }
</script>

 

<table>
<TR>
                    
<TD>街路:</TD>
                    
<TD colSpan="5">
                        
<INPUT id="StrCode" type="hidden" size="20" name="StrCode" runat="server"> <INPUT id="StrName" type="hidden" size="20" name="StrName" runat="server">
                        
<asp:TextBox id="Textbox17" runat="server" ReadOnly="True"></asp:TextBox>&nbsp;<INPUT name="cat" onclick="select_value()" type="button" value="选择街道">&nbsp;(为了房源能更容易被人搜索到,请选择街路)</TD>
                
</TR>
</table>

当点击了按钮 "选择街道" 后会调用上面的 js 函数

弹出的 StreetTreeViewModule.aspx 的 html 端代码如下:

 

<base target="_self">
<SCRIPT language="JavaScript">
               
<!--


function retForm(AreaID,StreetID,AreaName,StreetName)
    {

        
var members = new Array();
        members[
0= AreaID;
        members[
1= StreetID;   
        members[
2= AreaName;
        members[
3= StreetName;   
        window.returnValue 
= members;
        window.close();
    }
             
//-->
</SCRIPT>

 

 

<asp:DataList id="DataList1" RepeatColumns="6" RepeatDirection="Horizontal" runat="server" Width="100%">
                            
<ItemTemplate>
                                
<table width="100%" align="center">
                                    
<tr>
                                        
<td align="left" width="17%"><href="" onClick="retForm('4','<%# DataBinder.Eval(Container.DataItem,"StreetCode" ) %>','昌邑区','<%# DataBinder.Eval(Container.DataItem,"StreetName" ) %>')"><%# DataBinder.Eval(Container.DataItem,"StreetName" ) %></a></td>
                                    
</tr>
                                
</table>
                            
</ItemTemplate>
</asp:DataList>

 

当点击了 DataList1 中的连接后,会调 用 js 函数中的 retForm 方法,把参数传回到父页 parent.aspx 中去。

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值