¿Cómo crear un combo que muestre años desde el actual hasta 1900?

publicado por: Anonymous

Tengo este pequeño problema con JavaScript que no he logrado solucionarlo, necesito llenar las opciones de un selector de años de mi formulario, pero no quiero escribir todos los años manualmente, mas bien quiero que JavaScript lo haga por mi, desde el año actual hasta el año 1900, supuesta mente la función que estoy usando realiza esa tarea pero algo pasa que deja muchas opciones en blanco. Esta es la función:

_x000D_

_x000D_

function loadPage(){_x000D_
  ComboAno();_x000D_
}_x000D_
    _x000D_
 function ComboAno(){_x000D_
    var d = new Date();_x000D_
    var n = d.getFullYear();_x000D_
    var select = document.getElementById("ano");_x000D_
    for(var i = n; i>=1900; i--){_x000D_
        select.options[i]= new Option(i);_x000D_
    }_x000D_
}_x000D_
_x000D_
   

_x000D_

 <body onload="loadPage();">_x000D_
        <form action="">_x000D_
            _x000D_
            <select name="" id="ano">_x000D_
            </select>_x000D_
                      _x000D_
        </form>_x000D_
    </body>

_x000D_

_x000D_

_x000D_

solución

Crea un elemento option, añadele texto, su valor y agregalo al select.

function loadPage(){
     ComboAno();
 }

    function ComboAno(){

    var d = new Date();
    var n = d.getFullYear();
    var select = document.getElementById("ano");
    for(var i = n; i >= 1900; i--) {
        var opc = document.createElement("option");
        opc.text = i;
        opc.value = i;
        select.add(opc)
    }
}
Respondido por: Anonymous

Leave a Reply

Your email address will not be published. Required fields are marked *