Algunas funciones Javascript útiles para ASP.NET (en C#) - ponte

Algunas funciones Javascript útiles para ASP.NET (en C#)

Published Thu, Mar 5 2009 16:28

Nunca está de más conocer algunas funciones útiles para hacer más efectiva la programación web en ASP.NET, entre los que uso bastante son:

Ventana de Confirmación (Messagebox del lado del cliente)

Muy útil para pedirle confirmación al usuario cuando se va a hacer algún proceso del cual se puede arrepentir, por ejemplo, pedirle confirmación para borrar algún registro. En el botón donde se va a agregar la lógica para hacerlo, se le agrega el detalle para abrir una ventana y pedir confirmación. En el evento Load de la página es un buen lugar para hacerlo:

    protected void Page_Load(object sender, EventArgs e)
{
btnEliminar.Attributes.Add("onclick",
"return confirm('¿Eliminar registro?');"
);
}

Si el usuario presiona Ok, se ejecutará el código para borrar el registro, si no, es como si nunca hubiera tocado el botón.

Mostrar una ventana con tamaño determinado

A veces necesitamos mostrar una ventana extra independiente del área de trabajo del usuario para información, algún proceso pequeño o algo que para demostrar atención no puedes abrir en un nuevo tab o en otra ventana del navegador. De esta forma incluso podemos dimensionar la ventana emergente con el tamaño adecuado para nuestros fines.

    protected void Page_Load(object sender, EventArgs e)
{
btnNueva.Attributes.Add("OnClick",
"window.open('Nueva.aspx',null,'height=220,width=480');"
);
}

A tomar en cuenta es que el usuario puede tener bloqueadas las ventanas emergentes, así que una buena idea es mostrar en algún lado de la aplicación que desactive para tu sitio este bloqueo.

Cerrar una ventana

Para casos como el anterior donde después de abrir una ventana donde se espera generar trabajo pero no se puede confiar o resultaría muy engorroso para el usuario cerrar manualmente la ventana, conviene usar este método. En el ejemplo está en el evento Click de un botón pero bien puede figurar después de terminado alguna función.

    protected void btnCerrar_Click(object sender, EventArgs e)
{
Response.Write("<script>window.close();</script>");
}

Estas son algunas funciones donde es necesario hacer trabajo del lado del cliente para determinado comportamiento, por lo mismo no es para todas las situaciones y eventos posibles. Lo único es preguntarse si son cosas que no se pueden hacer del lado del servidor o que serían más rápidas y sencillas que se hicieran del lado del cliente.

Filed under: , , ,

Comments

# claudio said on Thursday, June 25, 2009 4:25 PM

muchas gracias

# Jhon Dany said on Tuesday, August 18, 2009 12:59 PM

buenas funciones... Thanks

# AkioMills said on Sunday, August 23, 2009 11:42 PM

Muchas gracias MAN

# thorin119 said on Monday, November 02, 2009 5:39 AM

La primera función de las tres, la que pide una confirmación al usuario, está muy bien, pero la pongo en mi página web, y me aparece la confirmación tres veces. A qué puede ser debido??

Utilizo unos controles de terceros, puede tener algo que ver?

Muchas gracias de antemano, :)

# Roque said on Wednesday, December 02, 2009 9:41 PM

Hola talvez en las propiedades del boton se puede agregar OnClientClick la funcion

OnClientClick = return confirm('¿Seguro que quiere fragmentar una vez iniciado el proceso no se puede detener?');

tambien me funciona asi

# tavo said on Wednesday, December 01, 2010 10:59 AM

En mi caso el problema que tengo es que a la hora de utilizar la 3ra funcion no me cierra la ventana, ya intente de muchas maneras y no logro cerrar el web que he desarrollado.

Quiero que a la hora de autenticar pueda tambien salirme por el boton de "Cancelar" no utilizo scripts, utilizo puro C#.

Me podrian ayudar???

# Joefay said on Saturday, December 25, 2010 11:08 AM

Muy buenos ejemplos..ty

# Cristhoper said on Thursday, September 22, 2011 9:46 AM

Muchas Gracias!!!

me sirvio bastante bien el 1er Ejemplo

# Carlos said on Monday, October 17, 2011 12:17 PM

Muchas gracias, me ayudó montones este post.

Leave a Comment

(required) 
(required) 
(optional)
(required) 
If you can't read this number refresh your screen
Enter the numbers above: