2010-10-05 106 views
0

我試圖在INSIDE ajax模式彈出窗口的單獨窗口中打開一個preview.aspx頁面。 我已經嘗試使用onClientCLick preview.target _blank等客戶端腳本來做到這一點,但這根本不起作用。 現在我已成功地我lbPreview_Click例行內至少得到這個工作,但是這需要一個第二個點擊,因爲我使用的Attributes.Add打開窗口(僅會到目前爲止的工作方式!):在ajax模式彈出窗口中打開.aspx頁面在新窗口中打開

protected void lbPreview_Click(object sender, EventArgs e) 
{ 
    string recordNo = lblRecordNo.Text; 
    string details = txtQuery.Text; 
    string reason = ddReason.SelectedItem.Text; 
    string fullName = lblFullName.Text; 
    string path = "emailPreview.aspx?recordNo=" + recordNo + "&details=" + details + "&reason=" + ddReason.SelectedItem.Text + "&fullName=" + fullName + ""; 
    lbPreview.Attributes.Add("onClick", "window.open('" + path + "');"); 
} 

請注意:我沒有建立我的網址路徑的值,直到按鈕被點擊,所以調用頁面加載或類似的細節也無效。

任何建議/幫助將非常感激。

親切的問候, ukjezza。

回答

0

您應該使用java-script來查找控制值來構建URL並打開窗口。例如,考慮下面的aspx頁面上的js函數

function openPreview() { 

    var recordNo = document.getElementById('<%= lblRecordNo.ClientID %>').innerHTML; 
    var details = document.getElementById('<%= txtQuery.ClientID %>').value; 
    var reason = document.getElementById('<%= ddReason.ClientID %>').value; 
    var fullName= document.getElementById('<%= lblFullName.ClientID %>').innerHTML; 

    var url = "emailPreview.aspx?recordNo=" + recordNo + "&details=" + details + "&reason=" + reason + "&fullName=" + fullName; 

    window.open(url); 
} 

應該在點擊預覽按鈕/鏈接時被調用。

+0

工作就像一個魅力,非常感謝您的幫助! :-) – ukjezza 2010-10-05 13:55:55

相關問題