2012-06-25 100 views
0

以下是我正面對的場景,我有一個aspx頁面,其中添加了我的ascx用戶控件,我也有一個<a href控件,它調用了一個js函數來打開一個aspx彈出。將數據從aspx頁面傳遞到aspx popup

當我打開彈出窗口時,我需要將存在於ascx控件中的數據發送到彈出窗口。能否請您指導我使用什麼方法來實現這一點,而不是使用會話,因爲數據可以在許多不同的地方更新,因此保持會話將很困難。

感謝

回答

0

嘗試用這些syntaxe(+的RegisterStartupScript window.open)

ScriptManager.RegisterStartupScript(Page, Page.GetType(), "newWindow", "window.open('Test.aspx?ID=" + _cId + "','_blank','status=1,toolbar=0,menubar=0,location=1,scrollbars=1,resizable=1,width=30,height=30);", false); 
+0

對不起,錯過提及,我必須通過的數據是大querystring將不夠。 – Arvind

0

你說,你正在使用一個js函數打開ASPX彈出。

那麼它很簡單。

 
1. Read the Data from the controls of the User control by using javascript 
    var variable1 = document.getElementByID("ControlId").value; 
    var variable2 = document.getElementByID("ControlId").value; 

2. Pass this data as query string to the next page 
    window.open("http://www.w3schools.com?id=" + variable1 + "&name=" + variable2); 
You can read this data from querystring from the next page 
+1

Hello Mohammed,如果你的控件是asp.net控件,你可以爲你的第一個腳本添加ClientId –

0
If you cant sent data as querystring , can try some other ways 

1. Try to post the form to the other page using target="_blank". 
    we can dynamically change the form action if needed. 
OR 
2. Make use of the window.opener object from the popup to read the data from controls the opener page. 
    var variable1 = window.opener.getElementById("ControlId").value 
0

創建您的ASCX一個隱藏的變量。

<asp:HiddenField runat="server" ID="hdnId" /> 

在ASCX設定值的頁面加載發送到隱藏變量

protected void Page_Load(object sender, EventArgs e){  
    hdnId.Value = <value to be sent to pop-up>; 
} 

代碼註冊一個AJAX經理的後面。

protected override void OnInit(EventArgs e) 
{ 
    RadAjaxManager.GetCurrent(this.Page).ClientEvents.OnRequestStart = "ajaxMngr_RequestStart;"; 

    base.OnInit(e); 
} 

在ajaxMngr_RequestStart()JS

function ajaxMngr_SA_RequestStart(sender, args) { 
      var oPatId = "<%=hdnSendPatId.Value %>"; 
      //add code to open the pop-up, add oPatId as part of the URL 
     } 
    } 

我使用Telerik的,這使得有很大幫助管理彈出式窗口。讓我知道,如果這有幫助。

乾杯!

相關問題