Abre una nueva ventana con asp.net
-
03-07-2019 - |
Pregunta
Soy nuevo en esa cosa asp.net, pero aquí va.
Llegué a ImageButton, y cuando se hace clic, quiero que la imagen se muestre en otra ventana. Si puedo evitar usar ajax, me gustaría hacer eso. Si es posible, quisiera hacer la ventana modal, pero aún así evitar el ajax, ya que todavía no estoy listo para mezclar más tecnologías.
Solución
En mi humilde opinión, la mejor práctica para mostrar una imagen es en la misma página en la parte superior del contenido. Personalmente uso Lightbox . Puede encontrar la documentación en su página, por lo que debería ser fácil para usted integrar su código JavaScript.
Otros consejos
Las respuestas existentes con JavaScript están bien, pero solo para sugerir una alternativa, ¿podría usar un HyperLink (con un ImageUrl configurado para que aún obtenga una imagen) y establezca su ¿Propiedad Target en su lugar?
Algo así:
<asp:ImageButton ID="imbJoin" CssClass="btn-find" AlternateText="Find" ToolTip="Find" runat="server" ImageUrl="~/library/btn-find.gif" onClick="javascript:popUp("ServicesLocator.aspx")" />
Recurso: http: // www. experts-exchange.com/Programming/Languages/.NET/ASP.NET/Q_22832169.html
Usando el botón ImageButton necesitas usar un JavaScript para abrirlo en una nueva ventana. También puede consultar el evento OnClientClick
Puede usar la propiedad OnClientClick de ImageButton:
<asp:ImageButton ... OnClientClick="javascript:window.open('url_to_image');" >
Pero esta ventana emergente no será modal.
El siguiente javascript hará lo que está buscando:
window.open('page.html','WindowTitle','width=400,height=200')
Podría valer la pena señalar dos entradas relevantes en la excelente #javascript FAQ de EFNet :
- Uso correcto de ventanas emergentes : ¡yay accesibilidad!
- ¿Cómo hago una ventana emergente del mismo tamaño que mi imagen?
- ¿Cómo creo un cuadro de diálogo "Aceptar" personalizado o algo similar? : las ventanas modales no son sería útil y algo así como la sugerida Lightbox o secuencias de comandos similares sería mejor " modal " opciones
- Uso correcto de los enlaces : este solo está parcialmente relacionado con el tema, pero las respuestas anteriores usan el " javascript: " el pseudo protocolo lo hizo necesario: nunca es necesario ni útil en una página web que debería funcionar en todos los navegadores. Después de todo, JavaScript es el lenguaje de scripting predeterminado (y único).
¡Gracias por todas las respuestas! Terminé usando lightbox Encontré este ejemplo http://neutrongenious.wordpress.com / 2007/09/08 / lightbox-for-asp-net-2-0 /
Y funciona perfectamente