在新标签页中打开url

我有一个url

Response.Redirect("~/webpages/frmCrystalReportViewer.aspx?VoucherNo=" + txtVoucherNo.Text + "&VoucherDate=" + txtVoucherDate.Text + " &strUserCode=" + strUserCode.ToString() + "&strCompanyCode=" + strCompanyCode.ToString() + "&formName=frmPaymentVoucher"); 

我想在浏览器的新选项卡中打开此URL。 我尝试下面的代码……

 string pageurl = "~/webpages/frmCrystalReportViewer.aspx?VoucherNo=" + txtVoucherNo.Text + "&VoucherDate=" + txtVoucherDate.Text + " &strUserCode=" + strUserCode.ToString() + "&strCompanyCode=" + strCompanyCode.ToString() + "&formName=frmPaymentVoucher"; Response.Write(""); Response.Write("window.open('" + pageurl + "','_blank')"); Response.Write(""); 

我也试过下面

 string pageurl = "~/webpages/frmCrystalReportViewer.aspx?VoucherNo=" + txtVoucherNo.Text + "&VoucherDate=" + txtVoucherDate.Text + " &strUserCode=" + strUserCode.ToString() + "&strCompanyCode=" + strCompanyCode.ToString() + "&formName=frmPaymentVoucher"; ScriptManager.RegisterStartupScript(Page, Page.GetType(), "popup", "window.open('" + pageurl + "','_blank')", true); 

我也试过了

  

但都没有用。 请告诉我任何其他解决方案。 提前致谢。

您正在使用带有〜的 URL,它将无法通过javascript识别。 你应该用使用ResolveUrl方法处理url

将URL转换为可在请求客户端上使用的URL(c)msdn

在你的情况下:

 Response.Write(String.Format("window.open('{0}','_blank')", ResolveUrl(pageurl))); 

在JavaScript的帮助下,只要我们想在新窗口中打开页面,我们就可以将表单的target属性设置为_blank。 请尝试以下方法

我有一个ASP.Net按钮

   

我正在调用ASP.Net Button Control的SetTarget()JavaScript函数OnClientClick事件,如下所述

  

调用btnPrint_Click方法OnClick事件控件如下所述

  protected void btnPrint_Click(object sender, EventArgs e) { Response.Redirect("ReportViewer1.aspx"); } 

anand360给出的答案对我有用。 谢谢!!

我在JavaScript中做了如下微小的更改,只访问所需的元素。

 document.getElementById["element_id"].target = "_blank";