Открыть всплывающее / новое окно из gridview — VS2010, c#

#visual-studio-2010 #gridview

#visual-studio-2010 #gridview

Вопрос:

Кто-нибудь может дать мне подсказку о том, как я могу открыть новое окно, выбрав запись из gridview? Я использую response.redirect и в настоящее время передаю значение, которое открывает страницу нормально, но я бы предпочел иметь всплывающее окно для этого

Спасибо

Ответ №1:

Вам нужно привязать событие click к строке элемента управления grid view

следующий код — это просто демонстрация для вас

следуя javascript, откройте всплывающее окно, в котором вам нужно передать нужный URL

 <script>
   function popWin(url){
        window.open(url, '', '');");
   }
   </script>
  

ниже приведен тот же код, который привязывает скрипт к строке gridview для открытия всплывающего окна

 code behind 

protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
{
    if(e.Row.RowType == DataControlRowType.DataRow )
    {            
        string url = "www.google.com";
        e.Row.Attributes.Add("onclick","popWin('"   url   "')");
    }
}
  

Ответ №2:

У меня была такая же проблема с response.redirect, поэтому вместо этого я использовал asp: кнопку гиперссылки. Я загрузил URL-адрес, привязав его к базе данных SQL. Вот код:

 <asp:TemplateField HeaderText="Google Map">
   <ItemTemplate>
       <asp:HyperLink runat="server" ID="hlGMap" Target="_blank" Text="Map" ImageUrl="~/gfx/google.png" NavigateUrl='<%# Bind("GoogleMapsURL") %>' />
   </ItemTemplate>
</asp:TemplateField>
  

Надеюсь, это поможет.