Как сделать так, чтобы событие button_Click открывало страницу во всплывающем окне в ASP.NET?

Вопрос простой, но я не могу найти на него однозначного ответа! .. Кстати, мне нужно передать QueryString на страницу, чтобы она открывалась.

Любые идеи ?


person Mazen Elkashef    schedule 11.09.2011    source источник
comment
это, вероятно, отвечает на ваш вопрос: stackoverflow .com / questions / 309979 /.   -  person Volkmar Rigo    schedule 11.09.2011


Ответы (3)


Фактически вы можете связать код javascript в .NET с помощью C #, ниже приведен пример, вы можете заменить свою информацию и нажать параметры.

   Response.Write("<script type='text/javascript'>window.open('Page.aspx?ID=" + YourTextField.Text.ToString() + "','_blank');</script>");

Вы можете добавить в конце? Поле = ваше значение, передаваемое & nextField = другое значение.

person Apollo SOFTWARE    schedule 11.09.2011
comment
Я думаю, что это может сработать, но как это реализовать в случае нажатия кнопки asp:? - person Mazen Elkashef; 28.09.2011
comment
Очень жаль, Амит, за поздний отзыв, я очень ценю вашу помощь :) - person Mazen Elkashef; 10.10.2011

Разве ответ сделать это в javascript. Когда вы создаете базовую страницу в asp.net, предоставьте ей javascript, чтобы поймать событие onclick кнопки и вызвать window.open (URL)

person akc42    schedule 11.09.2011

Это зависит от того, что вы пытаетесь сделать, но проще всего использовать свойство OnClientClick Button. Взгляните на http://msdn.microsoft.com/en-us/library/7ytf5t7k.aspx, в частности подробности об этом свойстве немного ниже.

В основном вы бы сделали что-то вроде

<asp:Button ID="Button1" Runat="server" 
        OnClientClick="ShowPopup();" 
        Text="Test Client Click" />

С JS для создания вашего всплывающего окна

<script type="text/javascript">
    function ShowPopup() {
        window.open('ThankYou.aspx');
    }
</script>

Вы также можете сделать и OnClientClick, и OnClick, если вам нужно.

<asp:Button ID="Button1" Runat="server" 
      OnClick="Button1_Click" 
        OnClientClick="ShowPopup();" 
        Text="Test Client Click" />

Код позади

    protected void Button1_Click(Object sender, EventArgs e)
    {
        Label1.Text = "Server click handler called.";
    }
person Kirk    schedule 12.09.2011
comment
что вы подразумеваете под этим свойством немного ниже. .. и как передать QueryString во всплывающее окно? - person Mazen Elkashef; 28.09.2011
comment
Я имел в виду немного меньше по ссылке MSDN. Посмотрите в разделе Добавление клиентского события onclick в элемент управления кнопки. Кроме того, откуда вы берете строку запроса из деталей? Если вы пытаетесь получить результат от события OnClick и передать его во всплывающее окно, вам потребуется другой подход и либо выяснить детали вручную во всплывающем окне, либо выяснить, что сказал AmitApollo и ответить. после постбека. - person Kirk; 28.09.2011