Foros del Web » Programando para Internet » Javascript »

Como Lo Hago??

Estas en el tema de Como Lo Hago?? en el foro de Javascript en Foros del Web. Hola gente estoy intentando hacer una cosita muy muy simple pero no lo consigo. tengo un <select...> en una pagina html. En el evento onChange ...
  #1 (permalink)  
Antiguo 22/07/2005, 06:15
 
Fecha de Ingreso: mayo-2005
Mensajes: 294
Antigüedad: 19 años
Puntos: 0
Como Lo Hago??

Hola gente estoy intentando hacer una cosita muy muy simple pero no lo consigo. tengo un <select...> en una pagina html. En el evento onChange llamo a una funcion que la idea es que esa funcion vaya guardando en una variable el valor de ese select y cuando el usuario pulse en un enlace yo entonces mando esa variable entre los parametros. Lo que tengo es:

//La funcion que cambia la variable
<script >
function p(arg){document.write(arg);}
var niv;
function nivel(nivel){
this.niv=nivel.value;
}
function Esquema(identificador,nombre){
this.identificador= identificador
this.nombre=nombre;
}
</script>


//la parte donde defino el <select...
<table border="0">
<tr><td>SELECCIONA EL NIVEL DE DIFICULTAD</td></tr>
<tr><td>
<select name="niveles" onChange="nivel(this)">
<option value="facil"> FACILES</option>
<option value="medio"> MEDIOS </option>
<option value="dificil">DIFICILES</option>
<option value="mezcla">MEZCLA </option>
</select>
</td></tr>
</table>


// y la parte done envio los parametros:
p('<a href="/SERVAUTO/servlet/es.unirioja.dmc.servauto.ElegirAutoevaluacion?id=' +esquemas[i].identificador+'&nombre='+esquemas[i].nombre+'&nivel='+niv+'" target="_self">');



el problema es que el servlet recibe tanto el id como el nombre perfectamente pero el nivel lo recibe como "undefined"
A ver si podeis ayudarme! Gracias
  #2 (permalink)  
Antiguo 22/07/2005, 06:46
 
Fecha de Ingreso: marzo-2003
Mensajes: 119
Antigüedad: 21 años, 1 mes
Puntos: 0
estuve probandolo y no me dio ningun problema el nivel, más allá de que, evidentemente, cuando se deja el select tal como está el onchange no se ejecuta y devuelve "undefined".

eso lo solucionas así:

//La funcion que cambia la variable
<script >
function p(arg){document.write(arg);}
var niv;
window.onload=function(){this.niv=document.getElem entById("niveles").options[0].value; }
function nivel(nivel){
this.niv=nivel.value;
}
function Esquema(identificador,nombre){
this.identificador= identificador
this.nombre=nombre;
}
</script>


//la parte donde defino el <select...
<table border="0">
<tr><td>SELECCIONA EL NIVEL DE DIFICULTAD</td></tr>
<tr><td>
<select id="niveles" name="niveles" onChange="nivel(this)">
<option value="facil"> FACILES</option>
<option value="medio"> MEDIOS </option>
<option value="dificil">DIFICILES</option>
<option value="mezcla">MEZCLA </option>
</select>
</td></tr>
</table>
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 05:19.