2012-12-12 16 views
1

點擊ASP.NET按鈕重定向以更正網站,但在同一個選項卡上,而不是在新選項卡中,我需要做什麼。下面的代碼OnClientClick="aspnetForm.target ='_blank';"有什麼問題?爲什麼它不夠,還有什麼需要做的?我點擊ASP.NET按鈕後得到正確的重定向,但沒有按照指定的新窗口獲得正確的重定向

按鈕控件下面的ASP.NET代碼是:

<asp:Button ID="btnGenerateReport" runat="server" Text="Generate Report" 
OnClick="btnGenerate_Click" OnClientClick="aspnetForm.target ='_blank';" /> 

回答

0

如果您正在尋找出服務器端代碼在按鈕單擊打開一個新窗口,然後在這裏是如何做到這一點。

將以下腳本添加到您的網頁的部分

<script language="javascript" type="text/javascript"> 
    function openNewWin(url) { 
     var x = window.open(url, 'mynewwin', 'width=600,height=600,toolbar=1'); 
     x.focus(); 
    } 
</script> 

然後按以下方式添加一個按鈕控件

<asp:Button ID="btnOpenPop" runat="server" Text="Open Pop"   
    onclick="btnOpenPop_Click" /> 

最後,在代碼中添加一些代碼隱藏文件

protected void btnOpenPop_Click(object sender, EventArgs e) 
{ 
    string url = "http://www.dotnetcurry.com"; 
    ClientScript.RegisterStartupScript(this.GetType(), "OpenWin", "<script>openNewWin('" + url + "')</script>"); 
} 
0

您無法在按鈕上使用目標屬性。

你必須使用JavaScript函數window.open()

檢查:

Window open() Method

+0

謝謝。所以對於一些C#不能自己做的事情沒有javascript,那麼...... –

1

我知道在ASP

1),你已經在使用第一種方法重定向頁面,新標籤兩種方法和它的作品也。使按鈕的代碼和上的OnClientClick事件按鈕的背後 點擊寫入以下代碼: -

button.OnClientClick = "aspnetForm.target='_blank'"; Response.Redirect("yourpage.aspx"); 

2)您也可以使用JavaScript

button.Attributes.Add("onclick", "window.open('yourpage.aspx');return false;"); 

兩種方法將點擊按鈕將您的頁面重定向到新標籤頁。

與您的代碼的錯誤是的OnClientClick =「aspnetForm.target =‘_空白;’」刪除分號「_blank」後,它會工作