29
Abr
10

formulario con múltiples opciones JSP

Una cuestión que he visto en todas partes es que al momento de registrar algo exista desde cero hasta muchas opciones para un valor, la manera mas fácil de aplicar eso en jsp son las checkboxs tenemos un formulario con un grupo de checkbox con el mismo nombre y request.getParameterValues(“nombre_de_las_check”); en la pagina que evalúa el formulario.

la estructura del proyecto seria algo como así

tenemos 2 paginas:

index.jsp

<html>
<head>
<title>HOLA SELECCION MULTIPLE</title>
<style type="text/css"><%@ include file="estilo.css"%></style>
</head>
<body bgcolor="#FFFFFF">
<form  name="f2"  action="proceso.jsp" method="post">
	numero1:<input type="text" name="numero1"><br/>
	numero2:<input type="text" name="numero2"><br/>
	<!-- varios checkbox con el mismo nombre "operacion" -->
	<input type="checkbox" name="operacion" value="suma">Suma<br/>
	<input type="checkbox" name="operacion" value="resta">Resta<br/>
	<input type="checkbox" name="operacion" value="multiplicacion">Multiplicacion<br/>
	<input type="checkbox" name="operacion" value="division">Division<br/>
	<input type="checkbox" name="operacion" value="residuo">Residuo<br/>
	<input type="submit" value="Calcular" >
</form>
</body>
</html>

y el codigo interesante

proceso.jsp

<html>
<head>
<title>HOLA SELECCION MULTIPLE</title>
<style type="text/css"><%@ include file="estilo.css"%></style>
</head>
<body>
<%
	/*sacamos los numero del request*/
	String sn1=request.getParameter("numero1");
	String sn2=request.getParameter("numero2");

	/*los convertimos a enteros para poder realizar las operaciones*/
	Integer n1=Integer.parseInt(sn1);
	Integer n2=Integer.parseInt(sn2);

	/*text es una vairable que usaremos para mostrar la informacion*/
	String text="";
	text=text+"- Numero 1: "+n1+"<br>";
	text=text+"- Numero 2: "+n2+"<br>";
	text=text+"<br>";

	/*como operaciones pueden ser varias usamos un vector*/
	/*y el request.tParameterValues ya que este nos devuelve un String[] */

	String[] operaciones=request.getParameterValues("operacion");

	/*si no escogio ninguna opcion operacionesnull*/
	if(operaciones!= null){
		/*recorremos el vector operaciones para ver cuales escogio*/
		for (int i=0;i<operaciones.length;i++){
			/*guardamos la informacion de cada ciclo en text*/
			if(operaciones[i].matches("suma")){
				text=text+operaciones[i]+": "+(n1+n2)+"<br>";
			}
			if(operaciones[i].matches("resta")){
				text=text+operaciones[i]+": "+(n1-n2)+"<br>";
			}
			if(operaciones[i].matches("multiplicacion")){
				text=text+operaciones[i]+": "+(n1*n2)+"<br>";
			}
			if(operaciones[i].matches("division")){
				text=text+operaciones[i]+": "+(n1/n2)+"<br>";
			}
			if(operaciones[i].matches("residuo")){
				text=text+operaciones[i]+": "+(n1%n2)+"<br>";
			}
		}
	}else{
		/*en caso que no escoga ninguna operacion*/
		text=text+"No selecciono ninguna operacion";
	}

%>
<!--mostramos text -->
<%= text %>

<!--un formulario que regrese a la pagina inicial -->
<!--se puede hacer con la etiqueta 'a' pero me gusta mas el boton -->
<form  name="f2"  action="index.jsp" method="post">
	<input type="submit" value="Volver" >
</form>
</body>
</html>

tenemos este css llamado
estilo.css

*{
	background-image:url(wallpaper1024x768.png);
	background-color:#CC0000;
	color:#FFFFFF;
}

recursos usados


12 Responses to “formulario con múltiples opciones JSP”


  1. 1 cueto
    agosto 10, 2010 a las 10:38 am

    simple el ejemplo, basico para empezar en jsp si ya se conoce java
    gracias..

    • agosto 10, 2010 a las 11:07 am

      la idea es esa una cuestión sencilla y al final uno se da cuenta que todo es sencillo y lo que parece complicado son un montón de pequeñas cosas

  2. 3 Paola
    septiembre 21, 2010 a las 4:09 pm

    Hola.. muy bueno tu aporte, solo queria saber como lo harias con combos. seleccionando las operaciones … gracias

    • septiembre 21, 2010 a las 10:32 pm

      no entendí la premisa, ¿seleccionar varios items que estén dentro de un combobox?, ¿seleccionar varios combos?, o ¿un combo que al seleccionar realice la operación?

  3. 5 Paola
    octubre 5, 2010 a las 11:36 am

    Mi pregunta se referia a usar combobox en vez de checkbox que fue lo que utilizaste para el tu ejmplo, para seleccionar las operacioones de suma resta, mutl, etc.
    Ojala me ayudes con el codigo. GRacias

    • noviembre 8, 2010 a las 5:46 pm

      un poco tarde la respuesta pero si, si se puede usar para el programa el uso de check o select no importa

    • 7 Paola
      noviembre 9, 2010 a las 9:32 am

      si, gracias, pero me podrias dar el codigo para cambiarlo por el select, porq he estado itentando pero no me corre, te lo agradeceria ya q soy bueva ene sto. grciass

      • noviembre 9, 2010 a las 3:13 pm
        <html>
        <head>
        <title>HOLA SELECCION MULTIPLE</title>
        <style type="text/css"><%@ include file="estilo.css"%></style>
        </head>
        <body bgcolor="#FFFFFF">
        <form  name="f2"  action="proceso.jsp" method="post">
        	numero1:<input type="text" name="numero1"><br/>
        	numero2:<input type="text" name="numero2"><br/>
        	<!-- varios checkbox con el mismo nombre "operacion" -->
        	<select name="operacion">
        		<option value="suma" label="suma">suma</option>
        		<option value="resta" label="resta">resta</option>
        		<option value="multiplicacion" label="multiplicacion">multiplicacion</option>
        		<option value="division" label="division">division</option>
        		<option value="residuo" label="residuo">residuo</option>
        	</select>
        </form>
        </body>
        </html>
        

        así queda remplazamos los checkbox por un select

  4. 9 osvaldo
    octubre 27, 2010 a las 3:14 pm

    mi pregunta es la siguiente tengo una list de checks de la siguiente forma:

    Agregar Datos>
    Modificar Datos
    Eliminar Datos

    y quiero que al hacer una consulta en mysql de esta forma

    conn3 = DriverManager.getConnection(“jdbc:mysql://localhost:3306/etiqueta_linea”, “root”, “”);
    st3=conn3.createStatement();
    pst3 = conn3.prepareStatement(“select * from rel_sub_tareas,tareas where rel_sub_tareas.id_tarea=tareas.id_tarea and id_rel_per_subper=? group by tarea”);
    pst3.setInt(1, rs2.getInt(“id_rel_per_subper”));
    rs3 = pst3.executeQuery();
    while(rs3.next()){

    %>
    el cual me arroja los valores de unas tareas iguales al name=”” de mis check y quiero q
    en esta parte me active el check de acuerdo al resultado. lo intente algo asi:

    document.forms[0]..checked = !document.forms[0]..checked

    pero no me funciono me sale un error que dice

    ‘document.forms.0.agregar_plano’ es nulo o no es un objeto

    quisiera saber que estoy haciendo mal o como puedo solucionar el problema

    de antemano gracias

  5. septiembre 9, 2013 a las 9:22 pm

    hola podrias subir de nuevo el archivo? la verdad no esta funcionando el link


Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s


I+Ds

Dudas consultas
Facebook
Twiter
Google +

Escribe tu dirección de correo electrónico para suscribirte a este blog, y recibir notificaciones de nuevas publicaciones por correo.

Únete a otros 348 seguidores

Ingenio DS en Facebook

Redes Sociales y Archivos

Entradas

abril 2010
L M X J V S D
« Mar   May »
 1234
567891011
12131415161718
19202122232425
2627282930  

IngenioDS en twiter


A %d blogueros les gusta esto: