Проблема при открытии новой вкладки из кода в asp.net - PullRequest
0 голосов
/ 13 января 2020

надеюсь, у вас все отлично! У меня есть задача открыть страницу в новой вкладке одним нажатием кнопки. Позвольте мне показать, что

<asp:Button runat="server" ID="btnCreateQuestion" Text="Create Question" CssClass="btn btn-primary" OnClick="btnCreateQuestion_OnClick" OnClientClick="SetTarget();" />



   function SetTarget() {
            debugger;
            document.forms[0].target = "_blank";
        }

   protected void btnCreateQuestion_OnClick(object sender, EventArgs e) {
 // other code ....
 switch (questionType) {
  case "Multiple Choice":
   Response.Cookies["options"].Value = optionNumber;
   Response.Redirect("~/Products/McQType.aspx?scode=" + subjectcodeid);
   break;
 }
}  

Теперь этот код работает должным образом, т.е. страница открывается в новой вкладке ...

Теперь у меня есть сетка, и внутри этой сетки у меня есть кнопка, которая отвечает за то же самое, т.е. открывает страницу в новой вкладке.

//button located inside grid
    <asp:LinkButton CssClass="btn" ID="btnEditQuestion" runat="server"
                                                            Style="padding-right: 10px; font-size: 11px; letter-spacing: -0.1px; font-family: Arial,Helvetica,sans-serif !important; font-weight: bold !important;"
                                                            OnClick="btnEditQuestion_OnClick"
                                                            OnClientClick="SetTarget();">
                                                            Edit Question
                                                            <i class="fa fa-edit" aria-hidden="true"></i>
                                                        </asp:LinkButton> 


protected void btnEditQuestion_OnClick(object sender, EventArgs e) {
 {
  case "Multiple Choice":
  Response.Redirect("~/Products/McQType.aspx?qid=" + questionId);
  break;
 }
}

Теперь страница открывается, но не в новой вкладке, где она должна открываться в новой вкладке.

Как решить эту проблему?

1 Ответ

1 голос
/ 13 января 2020
using System.Web.UI;
    protected void btnEditQuestion_OnClick(object sender, EventArgs e) {
     {
      case "Multiple Choice":
      ScriptManager.RegisterStartupScript(this, typeof(string), "", 
     "window.open('~/Products/McQType.aspx?qid=" + questionId + "', '', '');", true);
      break;
     }
    }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...