Ver Mensaje Individual
  #8 (permalink)  
Antiguo 16/07/2009, 01:24
Avatar de marcopoloaz06
marcopoloaz06
 
Fecha de Ingreso: julio-2007
Ubicación: México
Mensajes: 457
Antigüedad: 17 años, 5 meses
Puntos: 11
Sonrisa Respuesta: Menu desplegable dinamico con cajas de texto dinamicas

Hola, ps muy fácil si no le entiendes ps me dices pero te la trate de explicar con comentarios:

js:
Código javascript:
Ver original
  1. function fnc(th) {
  2.     var conten = document.getElementById('contenedor'); //El div que va a tener los inputs
  3.     var i = conten.getElementsByTagName('input').length || 0; //El numero de input que ya tiene, si no es 0
  4.     var num = Number(th.options[th.selectedIndex].text) || 0; //El numero de seleccion
  5.     if (num > i) { //si el numero es mas grande que la cantidad de inputs
  6.         for (; i < num; i++) {
  7.             var input = document.createElement('input'); //Lo creamos
  8.             input.type = 'text';
  9.             input.name = '_' + i; //El name del input segun su numero
  10.             input.value = th.options[i + 1].text; //El texto que va a tener el input
  11.             conten.appendChild(input); //Lo agregamos al contenedor
  12.         }
  13.     } else if (i > num) { //si hay mas inputs que el num de la selecion
  14.         for (; i > num; i--) {
  15.             conten.removeChild(conten.childNodes[i]); //Los borramos de mayor a menor
  16.         }
  17.     }
  18. };

y lo pruebaz con este
html:
Código HTML:
<select onchange="fnc(this);">
    <option value="0" />-
    <option value="uno" />1
    <option value="dos" />2
    <option value="tres" />3
    <option value="cuatro" />4
    <option value="cinco" />5
    <option value="seis" />6
    <option value="siete" />7
    <option value="ocho" />8
    <option value="nueve" />9
    <option value="diez" />10
</select>

<div id="contenedor">
</div> 
ps eso fue lo que entendi y ps ve una documentación acerca del DOM, esta es muy buena te dejo el link
http://mundogeek.net/archivos/2004/0...-de-documento/

se puede optimizar la función pero esa seria la base de lo que quieres hacer
bueno espero que te ayude
saludOs
:D
__________________
Aerolíneas Alicia :D