点击子窗体给父窗体上的对象赋值

1. 父窗体:
< input  id ="DetailID"  type ="hidden"  runat ="server"   />
< asp:TextBox  ID ="txtTitle"  runat ="server" ></ asp:TextBox >
< asp:DropDownList  ID ="ddlProgramCategory"  runat ="server" >
    
< asp:ListItem  Value ="0" > --类型-- </ asp:ListItem >
    
< asp:ListItem  Value ="1" > 台宣 </ asp:ListItem >
    
< asp:ListItem  Value ="2" > 广告 </ asp:ListItem >
    
< asp:ListItem  Value ="3" > 音乐 </ asp:ListItem >
</ asp:DropDownList >
< input  id ="btnAdd"  type ="button"  value ='新建'  onclick ="GetAddUrl();"   />

< script  language ="javascript" >   
function $(s){return document.getElementById(s);}
function isNull(_sVal){return (_sVal == "" || _sVal == null || _sVal == "undefined");}
//获取地址栏参数
function GetUrl(name)
{
    
var URLParams = new Array();
    
var aParams = window.location.search.substr(1).split('&');
    
for (i=0; i < aParams.length; i++)
    
{
        
var aParam = aParams[i].split('=');
        URLParams[aParam[
0]] = aParam[1];
    }

    
return URLParams[name];
}


function GetAddUrl()
{
    
var ddlProgramCategory = $('<%=ddlProgramCategory.ClientID %>');
    
var TitleID = $('<%=txtTitle.ClientID %>');//获取客户端对象
    var DetailID = $('<%=DetailID.ClientID %>');
    
var ID = GetUrl("UnitID");    
    
var categoryID = ddlProgramCategory.options[ddlProgramCategory.selectedIndex].value;
    
var url="";
    
switch (categoryID)//根据下拉框决定链接地址
    {
        
case "1": url = "Ad1.aspx?UnitID=" + ID; break;
        
case "2": url = "Ad2.aspx?UnitID=" + ID; break;
        
case "3": url = "MusicCategory.aspx?UnitID=" + ID; break;
    }

    
//将需要子窗体进行填充的对象的 ClientID 传到子窗体去
    url += "&DetailID=" + DetailID.id + "&TitleID=" + TitleID.id ;
    
if(categoryID!="0") winOpen(url);
}
  
//弹出打开新页面-------------------------------------------
function winOpen(url)
{
    
var sFeatures='height=500, width=600, top=80, left=300,toolbar=0, menubar=0, scrollbars=1, resizable=1, location=1, status=1';
    url 
= encodeURI(url);
    window.open(url,
"RM_ProgramDetail",sFeatures);
}

</ script >

2.子窗体(注意GridView第一列input的onclick事件,当选择checkBox时将实时给父窗体赋值)
     < asp:GridView  ID ="GridView1"  SkinID ="gvClass2"  runat ="server"  DataKeyNames ="ID"  OnRowDataBound ="GridView1_RowDataBound"
        AutoGenerateColumns
="False"  Width ="100%"  AllowSorting ="true"  OnSorting ="GridView1_Sorting"
        OnRowCancelingEdit
="GridView1_RowCancelingEdit"  OnRowEditing ="GridView1_RowEditing"
        OnRowUpdating
="GridView1_RowUpdating"  OnRowDeleting ="GridView1_RowDeleting" >
        
< Columns >
            
< asp:TemplateField >
                
< ItemTemplate >
                    
< input  id ="check"  runat ="server"  type ="checkbox"  value ='<%#  Eval("ID") % > ' title=' <% Eval ( " Title " ) %> '
                        class='
<% # FormatTime( Eval ( " Length " ))  %> ' οnclick="DoClick(this);" />
                
</ ItemTemplate >
                
< HeaderTemplate >
                    
< input  id ="checkAll"  title ="全选"  onclick ="javascript:CheckAll(this);"  runat ="server"
                        type
="checkbox"   />
                
</ HeaderTemplate >
                
< ItemStyle  Width ="5%"   />
            
</ asp:TemplateField >
        
</ Columns >
    
</ asp:GridView >

< script  language ="javascript" >
function  $(s){ return  document.getElementById(s);}
function  isNull(_sVal){ return  (_sVal  ==   ""   ||  _sVal  ==   null   ||  _sVal  ==   " undefined " );}
// 获取地址栏参数
function  GetUrl(name)
{
    
var  URLParams  =   new  Array();
    
var  aParams  =  document.location.search.substr( 1 ).split(' & ');
    
for  (i = 0 ; i  <  aParams.length; i ++ )
    {
        
var  aParam  =  aParams[i].split(' = ');
        URLParams[aParam[
0 ]]  =  aParam[ 1 ];
    }
    
// 取得传过来的name参数
     return  URLParams[name];
}
// ---------------------------------------------------------
function  GetParentObj(strID) // 获取父页面客户端对象
{
    
return  window.opener.document.getElementById(strID);
}

function  DoClick(obj)
{
    
var  UnitID  =  GetUrl( " UnitID " ); // 获取地址栏中传来的父窗体对象的ClientID
     var  TitleID  =  GetUrl( " TitleID " );
    
var  DetailID  =  GetUrl( " DetailID " );
    
    
if ( ! isNull(DetailID)  &&   ! isNull(TitleID))
    {
        
var  Obj_DetailID  =  GetParentObj(DetailID); // 获取父页面客户端对象
         var  Obj_TitleID  =  GetParentObj(TitleID);
        
if (obj.checked)
        {
            Obj_TitleID.value 
=  obj.title; // 给父窗体对象赋值
            Obj_DetailID.value  =  obj.value;
        }
        
else
        {
            Obj_TitleID.value 
=   "" ;
            Obj_DetailID.value 
=   "" ;
        }
    }
}
</ script >

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值