He tratado de adaptar el código que me has facilitado, sustituyendo variables numéricas por variables de elementos (los rangos). Cuando estaba basado en cifras funcionaba perfectamente, pero o bien he cometido un error grave de sintaxis, o he omitido algo fundamental, o sigo sin comprender bien la estructura:
Código:
function comprobar()
{
var valor = document.getElementById("csaves").value;
// He establecido que la variable "valor" es el número que he introducido en el campo del formulario "csaves"
var nivel = [ Peón, Cocinero, Soldado, Tesorero, Reclutador, Cazador, Iniciado, Aprendiz de Chamán, Chamán de la Tribu ];
// He enumerado las variables de elementos, los rangos.
if ( valor <= 1000 )
nivel = Peón;
if ( valor >= 1300 )
nivel = Cocinero;
if ( valor >= 1700 )
nivel = Soldado;
if ( valor >= 2200 )
nivel = Tesorero;
if ( valor >= 2800 )
nivel = Reclutador;
if ( valor >= 3500 )
nivel = Cazador;
if ( valor >= 4300 )
nivel = Iniciado;
if ( valor >= 5200 )
nivel = Aprendiz de Chamán;
if ( valor >= 10000 )
nivel = Chamán de la Tribu;
}
// He introducido los operandos y condiciones para ambas variables.
alert("Rango: " nivel );
document.getElementById("lista2").selectedIndex = nivel;
// Las ordenes para el formulario.
}
No solo no se ejecuta la función, ademas invalida el resto del script. ¿Que es lo que no he entendido?