Foros del Web » Programación para mayores de 30 ;) » Java »

Detectar que no se han selecionado campos Checkbox

Estas en el tema de Detectar que no se han selecionado campos Checkbox en el foro de Java en Foros del Web. Hola, estoy trabajando con jsp y mysql, la cosa es que tengo un formulario con una lista de checkbox y si se selecciona alguno la ...
  #1 (permalink)  
Antiguo 31/08/2011, 01:01
 
Fecha de Ingreso: junio-2011
Mensajes: 21
Antigüedad: 10 años, 5 meses
Puntos: 1
Pregunta Detectar que no se han selecionado campos Checkbox

Hola,
estoy trabajando con jsp y mysql, la cosa es que tengo un formulario con una lista de checkbox y si se selecciona alguno la cosa funciona bien, pero si no se selecciona no sé como detectarlo para que el programa no se pare.

Hago uso del request.getParameterValues("nombredelcampo") y obtengo el array de los checkbox que el usuario selecciona.
Necesito detectar de alguna manera que mi usuario no ha seleccionado nada para poder decirle al programa que en ese caso no haga nada con esta parte del formulario.

¿Alguien podría ayudarme?

He probado de mil formas, con longitudes, con null, con 0 y 1...

gracias
  #2 (permalink)  
Antiguo 31/08/2011, 06:44
Avatar de Ronruby  
Fecha de Ingreso: julio-2008
Ubicación: 18°30'N, 69°59'W
Mensajes: 4.879
Antigüedad: 13 años, 4 meses
Puntos: 416
Respuesta: Detectar que no se han selecionado campos Checkbox

Si request.getParameterValues("nombredelcampo") te trae un array de los seleccionados, puedes preguntar si el tamano de ese array es 0 y ahi saberlo.
  #3 (permalink)  
Antiguo 31/08/2011, 06:47
 
Fecha de Ingreso: junio-2011
Mensajes: 21
Antigüedad: 10 años, 5 meses
Puntos: 1
Respuesta: Detectar que no se han selecionado campos Checkbox

Hola,
he probado con esto también y no hay forma.
Le he puesto un bucle que me controle el tamaño del array de llegada pero parece que se atasca a la hora de recoger los datos.

si no se selecciona nada el programa se para en request.getParameterValues("nombredelcampo);
  #4 (permalink)  
Antiguo 31/08/2011, 08:21
Avatar de Ronruby  
Fecha de Ingreso: julio-2008
Ubicación: 18°30'N, 69°59'W
Mensajes: 4.879
Antigüedad: 13 años, 4 meses
Puntos: 416
Respuesta: Detectar que no se han selecionado campos Checkbox

Hice una prueba y se puede verificar el valor haciendo una comparación con null.

Código Javascript:
Ver original
  1. if(request.getParameterValues("campo") == null) {
  2.   //No se selecciono nada
  3. }
  #5 (permalink)  
Antiguo 25/10/2011, 02:49
 
Fecha de Ingreso: junio-2011
Mensajes: 151
Antigüedad: 10 años, 5 meses
Puntos: 2
Respuesta: Detectar que no se han selecionado campos Checkbox

Me pasaba algo del estilo, o eso creo, a mi me daba null pointer exception si no elegía nada. Lo hacía también con el getParameterValues, pero al final opté por hacerlo como siempre, con el getParameter normal y corriente.
En mi caso son checbox de si/no y tengo unos cuantos. Lo hago así:
Código:
String si1=req.getParameter("si1")==null?"":req.getParameter("si1");
String no1=req.getParameter("no1")==null?"":req.getParameter("no1");
if(!si1.equals(""))
	p1=si1;
else
	p1=no1;
si1 y no1 son los primeros checkbox que tengo y p1 es una variable que luego le pasaré a una función para que haga lo que tenga que hacer. La cosa es que funciona. Esto como ya sabrás es en el Servlet, en el jsp lo único que hago es ponerle de name="si1" y en value="si"
Espero que te sirva.
  #6 (permalink)  
Antiguo 01/10/2012, 12:29
 
Fecha de Ingreso: agosto-2012
Mensajes: 5
Antigüedad: 9 años, 4 meses
Puntos: 0
Respuesta: Detectar que no se han selecionado campos Checkbox

hola nessa_shurion me podrias compartir tu codigo ya que yo tengo el mismo problema nose como mandar a traer mi coleccion de checkbox e ingresarlos en mi base de datos ya que cada check estara en un campo

Etiquetas: campos, checkbox, jsp, jsp-servlets, formulario
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta

SíEste tema le ha gustado a 1 personas




La zona horaria es GMT -6. Ahora son las 17:06.