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

Como saber qué botón de un formulario se ha pulsado??

Estas en el tema de Como saber qué botón de un formulario se ha pulsado?? en el foro de Java en Foros del Web. ¿Como se puede saber el boton que se pulsa? Esto es, como se sabe el nombre del boton? Todo esto sin reenviar nada (si se ...
  #1 (permalink)  
Antiguo 13/05/2006, 12:04
 
Fecha de Ingreso: mayo-2006
Mensajes: 14
Antigüedad: 18 años
Puntos: 0
Como saber qué botón de un formulario se ha pulsado??

¿Como se puede saber el boton que se pulsa? Esto es, como se sabe el nombre del boton?

Todo esto sin reenviar nada (si se puede)
  #2 (permalink)  
Antiguo 13/05/2006, 16:18
Avatar de chuidiang
Colaborador
 
Fecha de Ingreso: octubre-2004
Mensajes: 3.774
Antigüedad: 19 años, 7 meses
Puntos: 454
Hola:

En el evento provocado por el botón, si no has hecho nada raro, con

evento.getActionCommand();

obtendras la etiqueta del botón.

Para más seguridad puedes hacer cosas como:

- Darle al botón un setActionCommand(String). La etiqueta puede ser la que quieras. Es la que obtendrás con evento.getActionCommand() y por defecto es la etiqueta del botón.

- Directamente (JButton)evento.getSource() te devuelve el botón en sí mismo, luego puedes preguntarle algo para identificarlo o compararlos con == si lo tienes guardado en otro sitio.

- Puedes darles nombres a los botones con setName() en el momento de crearlos. Luego, con el evento.getSource() obtienes el botón y preguntándole al resultado obtenido un getName() sabes exactamente que botón es.

En fin, como ves hay muchas posibilidades. El setActionCommand() es la que está pensada para esto.

Se bueno.
__________________
Apuntes Java
Wiki de Programación
  #3 (permalink)  
Antiguo 13/05/2006, 19:11
Avatar de BLEND  
Fecha de Ingreso: marzo-2006
Mensajes: 97
Antigüedad: 18 años, 1 mes
Puntos: 0
Que tal mi hermano, si estas utilizando un jsp y un sevlet, puedes hacer lo sigueinte:

(jsp)

<form action="NombreServlet" method="post">
<input type="text" name="variable" /> //parametro que se mandara al servlet.
<input type="submit" /> //tu boton que mandara los parametros al servlet.
</form>

(servlet)

String otraVariable = request.getParameter("variable"); //cachas el parametro y lo asignas en una variable String

if(otraVariable.equals("boton1"){
session.setAttribute("varibleAsignar","ParametroQu eSeAsgina"); //esto lo puedes hacer para almacenar tu parametro en una variable tipo sesion
}

response.sendRedirect("index.jsp"); //esto solo para que no te deje entrar al servlet y te mantenga solo en el index, en donde tienes tu pequeño formulario.

Espero haber entendid tu pregunta y haber respondido bien, si no hasmelo saber, camaras nos vemos.
  #4 (permalink)  
Antiguo 14/05/2006, 03:22
 
Fecha de Ingreso: mayo-2006
Mensajes: 14
Antigüedad: 18 años
Puntos: 0
chuidiang, creo que lo que me dices es para hacerlo en java, no? es culpa mia por no expresarme bien... Solo necesito saber que boton se pulsa en un jsp y no mandarlo a ningun servlet. Mirad, os lo explico con más detalle, saco una tabla de la bd con 4 columnas, 3 de ellas datos en si de la bd y en la ultima creo un boton con el que el usuario podrá borrar la fila correspondiente. Entonces es aqui donde necesito saber el nombre del boton para poder borrar la fila. creo que ahora queda mucho mas claro. Perdonad!
  #5 (permalink)  
Antiguo 14/05/2006, 07:07
 
Fecha de Ingreso: octubre-2003
Mensajes: 3.578
Antigüedad: 20 años, 6 meses
Puntos: 51
Una opcion es crear un formulario (form) diferente para cada fila, con un parametro oculto que te indique cual es la fila a borrar en la BDD.

<S>
  #6 (permalink)  
Antiguo 14/05/2006, 10:59
 
Fecha de Ingreso: mayo-2006
Mensajes: 14
Antigüedad: 18 años
Puntos: 0
y no hay limite de formularios en una pagina jsp?
  #7 (permalink)  
Antiguo 14/05/2006, 12:39
Avatar de BLEND  
Fecha de Ingreso: marzo-2006
Mensajes: 97
Antigüedad: 18 años, 1 mes
Puntos: 0
No hay ningun limite siempre y cuando no tenga el mismo nombre , pero podrias manejarlo con JavaScript
  #8 (permalink)  
Antiguo 14/05/2006, 15:02
 
Fecha de Ingreso: octubre-2003
Mensajes: 3.578
Antigüedad: 20 años, 6 meses
Puntos: 51
Que yo sepa no. De hecho no hace falta ni ponerles nombre, o les puedes poner un nombre con algo concatenado con el ID del registro a borrar, si quieres.
  #9 (permalink)  
Antiguo 15/05/2006, 02:22
 
Fecha de Ingreso: mayo-2006
Mensajes: 14
Antigüedad: 18 años
Puntos: 0
yo habia pensado llamarles de una forma a todos y concatenarles un contador, ya que se van a crear dentro de un bucle. lo siento compañeros, pero aun no me ha quedado clara la solucion....
  #10 (permalink)  
Antiguo 15/05/2006, 04:42
 
Fecha de Ingreso: octubre-2003
Mensajes: 3.578
Antigüedad: 20 años, 6 meses
Puntos: 51
¿Y que es lo que no te ha quedado claro? Por que tu mismo estas dando una solución. Hay muchas formas de darles nombres diferentes a los formularios, no es algo crítico que solo se pueda hacer de la forma X.
  #11 (permalink)  
Antiguo 15/05/2006, 14:36
 
Fecha de Ingreso: mayo-2006
Mensajes: 14
Antigüedad: 18 años
Puntos: 0
me refiero a que he intentado hacerlo con los formularios, pero tengo el mismo problema, no se como identificarlos. Es decir, cuando rellenas un campo de texto, sabes (porque lo guardas en un Bean) que has metido en cada campo de texto. Pero con botones, no se como hacerlo
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




La zona horaria es GMT -6. Ahora son las 20:02.