Foros del Web » Programando para Internet » Javascript »

Checkbox o Textfield

Estas en el tema de Checkbox o Textfield en el foro de Javascript en Foros del Web. Buenas gente del foro, soy nuevo por aca, y ya tengo una pregunta para hacerles. Tengo un formulario donde muestro registros de una tabla, donde ...
  #1 (permalink)  
Antiguo 16/03/2007, 06:50
 
Fecha de Ingreso: marzo-2007
Mensajes: 11
Antigüedad: 17 años, 1 mes
Puntos: 0
Checkbox o Textfield

Buenas gente del foro, soy nuevo por aca, y ya tengo una pregunta para hacerles.

Tengo un formulario donde muestro registros de una tabla, donde tengo una columna "A" con un codigo el cual tengo que ratificar o rectificar, para lo cual tengo un CHECKBOX para dejar el dato como venia en la base, y un TEXTFIELD para la rectificacion, donde cargare un codigo distinto al de la columna "A", la pregunta es, como hago para que si el usuario selecciona el CHECKBOX no pueda cargar en el TEXTFIELD y si saca la seleccion del mismo se habilite el TEXTFIELD, y aparte si escribe otro codigo en el TEXT no pueda seleccionar el CHECK y si borra el codigo del TEXT pueda volver a seleccionar el CHECK.

Espero se entienda la cuestion. A alguien se le ocurre algo? Muchas gracias!
  #2 (permalink)  
Antiguo 16/03/2007, 06:59
Avatar de JavierB
Colaborador
 
Fecha de Ingreso: febrero-2002
Ubicación: Madrid
Mensajes: 25.052
Antigüedad: 22 años, 2 meses
Puntos: 772
Re: Checkbox o Textfield

Hola divisionfun. Bienvenido al foro.

Prueba este ejemplo:

Código PHP:
<html>
<
head>
<
script type="text/javascript">
function 
marcar(obj) {
  
fila obj.parentNode.parentNode;
  if (
obj.type=='checkbox')
    
fila.getElementsByTagName('input')[1].disabled = (obj.checked);
  else
    
fila.getElementsByTagName('input')[0].disabled = (obj.value.length 0);
}
</script>
</head>
<body>
<table>
<tr>
<td><input type="checkbox" onclick = "marcar(this)" /></td>
<td><input type="text" onkeyup="marcar(this)" /></td>
</tr>
</table>
</body>
</html> 
Saludos,
  #3 (permalink)  
Antiguo 16/03/2007, 08:55
 
Fecha de Ingreso: marzo-2007
Mensajes: 11
Antigüedad: 17 años, 1 mes
Puntos: 0
Re: Checkbox o Textfield

GENIAL, muchas gracias, anduvo lo mas bien, le tuve que agregar un parentNode simplemente. Sobre esto, como puedo yo saber cuantos nodos tengo??
  #4 (permalink)  
Antiguo 19/03/2007, 13:25
 
Fecha de Ingreso: marzo-2007
Mensajes: 11
Antigüedad: 17 años, 1 mes
Puntos: 0
Re: Checkbox o Textfield

Javier, la solucion anda de maravillas, pero me surge otro problema.
Los registros que vienen de la tabla en algunos casos marcan el CHECKBOX y en otros muestran el nro en el TEXTFIELD, en otros no muestran nada ya que no hay datos, en estos ultimos no tengo problemas, pero en los otros si viene un dato en el TEXTFIELD y marco el CHECKBOX el anterior se pone gris pero el nro queda detras, al hacer el SUBMIT y hacer el UPDATE en la base anda todo barbaro, pero no queda muy prolijo que muestre el nro en el fondo, estuve intentando borrar el nro pero nada de lo que probe me funciono, tendras alguna idea de como sacarlos??? muchas gracias por tu tiempo!!!
  #5 (permalink)  
Antiguo 19/03/2007, 13:36
Avatar de JavierB
Colaborador
 
Fecha de Ingreso: febrero-2002
Ubicación: Madrid
Mensajes: 25.052
Antigüedad: 22 años, 2 meses
Puntos: 772
Re: Checkbox o Textfield

Hola de nuevo.

Supongo que podría hacerse algo en JavaScript, pero lo más sencillo sería que, con el mismo lenguaje que usas para leer la base de datos, "dibujes" el checkbox deshabilitado cuando haya datos en el textfield. Tendría que quedar así:

<input type="checkbox" disabled="disabled" />

Saludos,
  #6 (permalink)  
Antiguo 19/03/2007, 13:52
 
Fecha de Ingreso: marzo-2007
Mensajes: 11
Antigüedad: 17 años, 1 mes
Puntos: 0
Re: Checkbox o Textfield

MUCHAS gracias, no puedo creer lo facil que era!!! simplemente ponerle un ELSE a una pregunta que hacia en el CHECKBOX, a veces uno tiene la solucion tan a la vista que no la encuentra y la rebusca por cualquier lado.
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 04:49.