2012-12-12 3 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

, 여기에 그렇게하는 방법은 다음과 같습니다.

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

마지막으로 파일 뒤에 코드에서 일부 코드를 추가

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

그런 다음 다음과 같은 방식으로 Button 컨트롤을 추가 페이지의 섹션에 다음 스크립트를 추가

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

버튼의 대상 속성을 사용할 수 없습니다.

당신은 자바 스크립트 함수를 window.open()

확인이 사용해야합니다 : 나는 가볍게 링크를 게시하지 않습니다

Window open() Method

+0

감사합니다 작동합니다. 따라서 C#은 javascript 없이는 할 수없는 것들이 많이 있습니다. –

1

나는 ASP

1) 당신이 이미 사용하고있는 첫 번째 방법에서 새 탭 페이지를 리디렉션하는 두 가지 방법을 알고 또한 작동합니다. 또한 자바 스크립트

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

두 가지 방법을 사용할 수 있습니다)

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

2 - 다음 코드를 작성 클릭 버튼의 코드 숨김 버튼과에 onclientclick 이벤트를 확인 버튼을 클릭하면 페이지가 새 탭으로 리디렉션됩니다.

코드에 오류가 입니다 OnClientClick = "aspnetForm.target = '_ 빈;'" '_blank'이후에 세미콜론을 제거하고