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

Mandar 2 o mas valores de un checkbox

Estas en el tema de Mandar 2 o mas valores de un checkbox en el foro de Java en Foros del Web. Ojala esta ves me puedan ayudar, :( El tema es que tengo un table donde me muestran mis registros de mi bd, el hecho que ...
  #1 (permalink)  
Antiguo 17/04/2012, 15:57
 
Fecha de Ingreso: abril-2012
Mensajes: 33
Antigüedad: 12 años, 1 mes
Puntos: 3
Mandar 2 o mas valores de un checkbox

Ojala esta ves me puedan ayudar, :(
El tema es que tengo un table donde me muestran mis registros de mi bd, el hecho que quiero que me manden los demas valores de la misma fila de donde hago el check, los check lo hize para que sea como radiobutton, y pues no consigo mandar 2 valores, solo uno del mismo checkbox. Ayuda! :(

Código Javascript:
Ver original
  1. <script type="text/javascript">
  2.     function pulsar(obj) {
  3.     if (!obj.checked) return
  4.     elem=document.getElementsByName('chk');
  5.     for(i=0;i<elem.length;i++)  
  6.         elem[i].checked=false;
  7.     obj.checked=true;
  8. }
  9.  
  10. function enviar(){
  11.     var rnd = Math.random()*11;
  12.     var abcx = $("#:checkbox:checked").val();
  13.     window.opener.padre(abcx);
  14. }
  15.  
  16. function padre(abcx){
  17.     var rnd = Math.random()*11;
  18.     document.getElementById("caja").value = abcx;
  19. }
  20. </script>

Código HTML:
Ver original
  1. <%
  2.    Vector listado = Sql.consulta("select PersonaNombres, PersonaPaterno, PersonaMaterno,PersonaCodigo from persona");
  3.    for (int fils = 1; fils < listado.size(); ++fils) {
  4.        String[] unaFila = (String[]) listado.get(fils);
  5. %>
  6.     <tr>
  7.         <td><input type="checkbox" name="chk" id="chk" value="<%=unaFila[1]%>"  onclick="pulsar(this)"></td>
  8.         <td><%=unaFila[3]%></td>
  9.         <td><%=unaFila[1]%></td>
  10.     </tr>
  11.  
  12. <%}%>
  13. <input type="button" onclick="enviar();window.close();" value="Enviar" />


Cuando hago que la function padre funcione, es para que me muestre el dato que cogi en mi pagina padre , lo que muestro antes es un PopUp(Ventana emergente).

con <%=unaFila[1]%> estaria mandando el apellido paterno del check que hice.

quiero mandar tambien el <%=unaFila[3]%> pero en otro id o name, preferible id.
  #2 (permalink)  
Antiguo 17/04/2012, 16:03
 
Fecha de Ingreso: abril-2012
Mensajes: 33
Antigüedad: 12 años, 1 mes
Puntos: 3
Respuesta: Mandar 2 o mas valores de un checkbox

O derrepente puedo mandar el codigo de la persona, pero en un function no puedo hacer un select para jalar los demas datos con el where del codigo.
  #3 (permalink)  
Antiguo 18/04/2012, 11:21
 
Fecha de Ingreso: abril-2012
Mensajes: 33
Antigüedad: 12 años, 1 mes
Puntos: 3
Respuesta: Mandar 2 o mas valores de un checkbox

Lo hago mas sensillo:

Tengo una tabla con varias filas y 4 columnas

x Ejemplo:

| - | ID | Nombre | Telefono
| ■ | 01 | Juan | 464353643
| ■ | 02 | chilindrina | 15313131

los ■ con checkbox
Supongamos que mi checkbox trabaja como radio button, osea 1 nomas puede ser dado.

Mi duda es la siguiente:
Como hago para recoger los valores de la fila si hago check en el segundo

Osea si hago check en el segundo, mandar el ID=02 , Nombre="Chilindrina" y telefono="15313131"

Código HTML:
Ver original
  1. <tr>
  2.         <td><input type="checkbox" name="chk" id="chk" value="02"/></td>
  3.         <td><input type="text" id="ID" value="02"/></td>
  4.         <td><input type="text" id="Nombre" value="chilindrina"/></td>
  5.         <td><input type="text" id="Telefono" value="15313131"/></td>
  6.     </tr>

PD: Tienen que tener el mismo id obligado.
  #4 (permalink)  
Antiguo 18/04/2012, 14:31
Avatar de Xerelo  
Fecha de Ingreso: mayo-2009
Mensajes: 2.175
Antigüedad: 15 años
Puntos: 306
Respuesta: Mandar 2 o mas valores de un checkbox

No puedes mandar dos valores en un checkbox, es como querer meter dos valores en una variable.

Lo que puedes hacer es que mediante javascript, bien al seleccionar un checkbox, bien al pulsar submit, copiar los datos del Id seleccionado en campos ocultos y ser eso lo que envíes.
__________________
Cada vez que solucionas los problemas de alguien que no se esfuerza, piensa en que el día de mañana puede llegar a ser tu compañero de trabajo, o peor, tu jefe.
  #5 (permalink)  
Antiguo 19/04/2012, 07:23
 
Fecha de Ingreso: abril-2012
Mensajes: 33
Antigüedad: 12 años, 1 mes
Puntos: 3
Respuesta: Mandar 2 o mas valores de un checkbox

Bueno lo que hize es lo siguiente, derrepente a alguien le sirve, es algo enredado, creo que se puede optimizar pero no se como, pero alli ta.
Lo que hize es que de una pagina padre, con el boton "buscar" me habra otra pagina(PopUp)
,donde buscare la persona que necesito.

En el Padre:
Código Javascript:
Ver original
  1. function buscar(){
  2.     var url="/ProyectoInventarioAmbev/cajatexto.jsp";
  3.     window.open(url,"Nuevo Usuario","alwaysRaised=yes,toolbar=no,menubar=no,status=no,resizable=yes,width=400,height=300")
  4. }

.. y demas ya se imaginan como llamarlo, mejor lo pongo XD
Código HTML:
Ver original
  1. <input type="button" onclick="buscar();" value="buscar"/>


Este es el PopUp:
Código HTML:
Ver original
  1.         <tr>
  2.         <td></td>
  3.         <td>ID</td>
  4.         <td>Nombres</td>
  5.     </tr>
  6. <%
  7.    Vector listado = Sql.consulta("select PersonaNombres, PersonaPaterno, PersonaMaterno,PersonaCodigo from persona");
  8.    for (int fils = 1; fils < listado.size(); ++fils) {
  9.        String[] unaFila = (String[]) listado.get(fils);
  10. %>
  11.     <tr>
  12.         <td><input type="checkbox" name="chk" id="chk" value="<%=unaFila[3]%>"  onclick="pulsara(this)"></td>
  13.         <td><input type="text"  value="<%=unaFila[3]%>"></td>
  14.         <td><input type="text"  value="<%=unaFila[2]%>"></td>
  15.     </tr>
  16. <%}%>
  17.  
  18. <input type="button" onclick="enviar();window.close();" value="Enviar" />

el Onclick pulsara(this) : Hace que mis checkbox funcionen como radio button.
y mi Onclick enviar(): Manda el valor del checkbox.
Windows.close(): Cierra el PopUp.
Mando el ID de la persona, para despues mostrar sus demas datos con ese id para el where.

Código Javascript:
Ver original
  1. function enviar(){
  2.     var abcx = $("#:checkbox:checked").val();//recoge el valor del check seleccionado
  3.     window.opener.padre(abcx); //Esto hace que funcione la funcion padre()
  4.     window.opener.document.getElementById('aa').click(); // este hace que haga click en donde tiene id=aa en el padre
  5. }
  6.  
  7. function padre(abcx){
  8.     document.getElementById("caja").value = abcx;
  9. }

Cree otro jsp: para jalar los datos del id que mande, este es mi UPS.jsp
Código HTML:
Ver original
  1. <%@page import="java.util.Vector,jdbc.*;" %>
  2. <%@page contentType="text/html" pageEncoding="UTF-8"%>
  3. <%
  4.  String abcx = request.getParameter("caja");      
  5. String a = Sql.getCampo("select PersonaNombres from persona where personacodigo="+abcx+"");
  6. %>
  7.  
  8. <%=a%>//este seria mi PersonaNombres

Ahora en mi pagina padre puse esto:

Código HTML:
Ver original
  1.     function gente(){
  2.         var caja = $("#caja").val();//Recojo el id del txt hidden caja
  3.         $.post("UPS.jsp",{// a caja lo mando a UPS
  4.         caja:caja
  5.     },function(data){
  6.         document.getElementById("cajita").value = data;
  7.     });// Aca digo que mando el id de la persona a ups y el resultado o lo que este en el ups me lo ponga en mi text id=cajita del padre
  8.     }
  9. <input type="hidden" value="" id="caja"/>
  10. <input type="submit" onclick="gente();" id="aa" style="visibility: hidden"/>//
  11. <input type="text"  size="40px"  id="cajita" disabled/>//Aqui me muestra el select que hize.

Wueno ojala se entienda, es cuestion de revisar al detalle lo que se envia del PopUp al Padre y del Padre al UPS y del UPS al Padre XD!.

Etiquetas: checkbox, string
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 03:07.