Ver Mensaje Individual
  #1 (permalink)  
Antiguo 28/11/2008, 09:05
Avatar de Hayi
Hayi
 
Fecha de Ingreso: febrero-2002
Ubicación: Santa Fe - Santa Fe
Mensajes: 121
Antigüedad: 23 años
Puntos: 3
Pregunta Problema al "combinar" distintos Habilitar y Deshabilitar

Hola. Será un poco extenso mi tema pero es para que se entienda mediante los ejemplos. Mi idea principal es, para una búsqueda determinada, habilitar las opciones para dicha búsqueda.

Ésta forma funciona perfecto: según el RadioButton que se elija, habilita el método de la búsqueda (en este caso, Habilita tanto el campo Texto como el Botón).

Cita:
<HTML>
<HEAD>
<SCRIPT TYPE="text/javascript">
function habilitar(parametro) {
seleccion1 = 2;
seleccion2 = 2;
for (i=0; i<seleccion1; i++)
document.forms[0]['texto'+i].disabled = (parametro.value != i);
for (j=0; j<seleccion2; j++)
document.forms[0]['boton'+j].disabled = (parametro.value != j);
}
</SCRIPT>
</HEAD>
<BODY>
<FORM NAME="formBuscar" METHOD="post" ACTION="buscar.php" AUTOCOMPLETE="off">
<INPUT TYPE="radio" NAME="radio1" VALUE="0" onClick="habilitar(this)">
Por NOMBRE<INPUT TYPE="text" NAME="texto0" WIDTH="100" DISABLED="disabled">
<INPUT TYPE="submit" NAME="boton0" VALUE="Buscar" DISABLED="disabled">
<BR><BR>
<INPUT TYPE="radio" NAME="radio1" VALUE="1" onClick="habilitar(this)">
Por APELLIDO<INPUT TYPE="text" NAME="texto1" WIDTH="100" DISABLED="disabled">
<INPUT TYPE="submit" NAME="boton1" VALUE="Buscar" DISABLED="disabled">
</FORM>
</BODY>
</HTML>
Ésta forma también funciona perfecto: se eloje el RadioButton y habilita los otros RadioButtons.

Cita:
<HTML>
<HEAD>
<SCRIPT TYPE="text/javascript">
function habilitar(parametro) {
formulario=parametro.formBuscar;
seleccion2 = 2;
for (i=0; cadena=formulario.radio1[i]; i++)
cadena.disabled = !parametro.checked;
}
</SCRIPT>
</HEAD>
<BODY>
<FORM NAME="formBuscar" METHOD="post" ACTION="buscar.php" AUTOCOMPLETE="off">
<INPUT TYPE="radio" NAME="radio0" VALUE="0" onClick="habilitar2(this)">Buscar:<BR>
<INPUT TYPE="radio" NAME="radio1" VALUE="0" DISABLED="disabled">Por NOMBRE
<BR><BR>
<INPUT TYPE="radio" NAME="radio1" VALUE="1" DISABLED="disabled">Por APELLIDO
</FORM>
</BODY>
</HTML>
AHORA... mi problema se da al querer "combinar" éstos 2 métodos, es decir, al elegir un RadioButton, me habilite otros RadioButtons y a su vez éstos últimos habiliten, según se especifique, el campo Texto y el Botón (algo así como llamar a habilitar2() para que se habilite los campos de habilitar()). Perdón si resulta complicado de entender pero traté de expresarme lo mejor que pude. De todas formas, si conocen un método "más claro" para hacer ésto que quiero, será bienvenido... Saludos, gracias y disculpas por las molestias causadas...