Ver Mensaje Individual
  #2 (permalink)  
Antiguo 01/09/2004, 19:23
kepawe
 
Fecha de Ingreso: agosto-2004
Mensajes: 157
Antigüedad: 20 años, 3 meses
Puntos: 5
Hola Omyta

A ver si te sirve este script o al menos te pueda dar alguna idea que te lleve a buen puerto.

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">

<html>

<head>

<title>Poblar un combo</title>

</head>


<body BGCOLOR="#FFFFFF">

<form name="formulario">
<!- Al seleccionar una de las opciones enviamos el valor -->
<select name="producto" onChange="populate_combo(this.options[this.options.selectedIndex].value)">
<option value="impresoras">Impresoras</option>
<option value="ordenadores">Ordenadores</option>
</select>

<select name="modelo">
</select>

<input type="submit" value="enviar">
</form>

<script languaje="JavaScript" type="text/javascript">
<!--

// Los nombres de los arrays deben coincidir con los valores del combo producto
var impresoras = new Array()
impresoras[0] = "Epson"
impresoras[1] = "HP"
impresoras[2] = "Canon"
impresoras[3] = "Lexmark"

var ordenadores = new Array()
ordenadores[0] = "IBM"
ordenadores[1] = "Apple"
ordenadores[2] = "Beep"

// Esta función puebla el combo modelo
function populate_combo(v_option){
var combo_modelo = document.formulario.modelo
// convertimos la cadena en un objeto
var convert_array = eval(v_option)

// Si el combo modelo esta poblado lo vaciamos
if(combo_modelo.length > 0){
for(ct = 0; ct < combo_modelo.length -1 ; ct){
combo_modelo.options[ct] = null

}
}
// Lo poblamos con los valores del array seleccionado
//para ello utilizamos la funcion constructora Option(texto,valor)

for(ct1= 0; ct1 < convert_array.length; ct1++){

combo_modelo.options[ct1] = new Option(convert_array[ct1],convert_array[ct1])


}

}

// Al cargar la página poblamos el combo modelo
window.onLoad = populate_combo(document.formulario.producto.option s[document.formulario.producto.selectedIndex].value)


//-->
</script>


</body>

</html>


¿No se si Netscape 4 ha pasado a la historia?
En Netscape 4 creo que es necesario actualizar la página y hacer algun cambio para que funcione el script.

Un saludo.