Ver Mensaje Individual
  #4 (permalink)  
Antiguo 13/09/2009, 14:50
Avatar de zerokilled
zerokilled
Javascripter
 
Fecha de Ingreso: abril-2009
Ubicación: Isla del Encanto, La Borinqueña [+>==]
Mensajes: 8.050
Antigüedad: 15 años, 9 meses
Puntos: 1485
Respuesta: Ayuda de javascript básico!!!

la ventaja de this es que puedes reducir las lineas de codigos y de forma general evita tener que actualizar cierta parte del codigo. de modo que this es una referencia directa a un objeto, en este caso el elemento <select>. hay otras alternativas frente a this y el uso de cada una de ellas depende de la informacion disponible en el codigo HTML. despues de todo veras que en tu caso la mejor alternativa es this.
  • getElementById - si el elemento tiene asignado un ID, con el metodo document.getElementById obtienes la referencia al elemento utilizando el ID.
    Código:
    <select id="mi_select" onchange="dia = document.getElementById('mi_select').value;">...</select>
    
  • atributo name - en HTML hay ciertos elementos que tienen el atributo name. por lo general este es utilizado para poder formar el query de un formulario a enviarse. sin embargo, javascript puede usar dicho valor para obtener la referencia al elemento.
    Código:
    <form name="mi_form">
    <select name="mi_select" onchange="dia = document.mi_form.mi_select.value;">...</select>
    </form>
    
    fijate que el select esta dentro de <form> y este a su vez tiene un name. esta forma es valida porque los navegadores utilizan la tecnologia DOM el cual define, ademas de una serie de metodos, una estructura de objetos para llegar a elementos mas especificos. mas o menos lo puedes comparar cuando en actionscript hace algo como _root.nombre_instancia.algun_objeto.metodo(). ahora, imaginemos que cambiaramos el valor de los atributos name. tendriamos que actualizar el codigo JavaScript porque de lo contrario el navegador genera errores.

como ves, this es una solucion bastante comoda cuando es oportuno utilizarlo.
__________________
la maldad es una virtud humana,
y la espiritualidad es la lucha del hombre contra su maldad.

Última edición por zerokilled; 13/09/2009 a las 14:58