Foros del Web » Programando para Internet » Javascript »

Ayuda de javascript básico!!!

Estas en el tema de Ayuda de javascript básico!!! en el foro de Javascript en Foros del Web. Buenas buenas. La verdad les va a sonar algo simple mi pregunta, pero realmente soy muy muy nuevo. Y saludo a esta comunidad. Siempre hay ...
  #1 (permalink)  
Antiguo 13/09/2009, 03:15
Avatar de Eskombro  
Fecha de Ingreso: septiembre-2009
Ubicación: Colombia
Mensajes: 437
Antigüedad: 15 años, 3 meses
Puntos: 22
De acuerdo Ayuda de javascript básico!!!

Buenas buenas. La verdad les va a sonar algo simple mi pregunta, pero realmente soy muy muy nuevo. Y saludo a esta comunidad. Siempre hay quien ayude, y ya yo intentaré aportar lo que pueda en flash/actionscript, que es lo que sé. Sucede que estoy creando en una web uno de estos formularios donde eliges de un menu desplegable (drop-down) la fecha de nacimiento. Pongamosla simple. Elegir el día. Para no tener que escribir las mil opciones, le di un script (es uno de mis primeros) para generarlas con un loop (un for). ahora no sé como hacer para que una variable tome el valor de la opción seleccionada. Les agradecría infinitamente una respuesta, y mientras más explicada o sencilla mejor, pues llevo apenas 1 día introduciendome al java. pongo el código que genera el loop. Gracias... (todas mis web las trabajo en block de notas así que nada de programas, solo código, jeje):

<select size=1>
<script type="text/javascript">
for(i=1;i<=31;i++){
document.write("<option value="+i+">"+i+"</option>");
}
</script>
</select>

esto me genera el select. Supongo que al select le debo dar un onchange"algunaFuncion()" y definir la función, pero realmente no sécómo hacerle. Alguna ayudita?

Gracias.

PD: Que es eso del karma?

Última edición por Eskombro; 13/09/2009 a las 03:33 Razón: Pd: que es eso del karma?
  #2 (permalink)  
Antiguo 13/09/2009, 03:55
Avatar de caricatos
Moderador
 
Fecha de Ingreso: abril-2002
Ubicación: Torremolinos (Málaga)
Mensajes: 19.607
Antigüedad: 22 años, 8 meses
Puntos: 1284
Respuesta: Ayuda de javascript básico!!!

Hola:

Pues estás bien encaminado, pero no es necesario ninguna definición de nuevas funciones en casos tan básicos... por ejemplo si tienes definida una variable así:
var dia; (o tal vez var dia, mes, anio;)... en ese select puedes poner:
selec onchange="dia = this.value)... de paso te comento que puedes usar los scripts que mucha gente pone a disposición de los demás... casi siempre con la única condición de mantener los créditos. Uno de ellos puedes obtenerlo da la página de mi perfil.

Lo del karma, no es otra cosa que una especie de valoración que hacemos en esta comunidad... no solo hacia los que ayudan con soluciones, sino asesorando, o tal vez con buena disposición (también se puede "reprobar"... )... supongo que de a poco te irás enterando.

Saludos y bienvenido a esta comunidad
__________________
Por favor:
No hagan preguntas de temas de foros en mensajes privados... no las respondo
  #3 (permalink)  
Antiguo 13/09/2009, 14:20
Avatar de Eskombro  
Fecha de Ingreso: septiembre-2009
Ubicación: Colombia
Mensajes: 437
Antigüedad: 15 años, 3 meses
Puntos: 22
Respuesta: Ayuda de javascript básico!!!

Muchas gracias. Ahora funciona. La idea es que cuando envíe la fecha tenga que confirmarla. Por lo tanto quería hacer un confirm en el que apareciera el dia mes y año seleccionados y el usuario tuviera que confirmar la fecha, pero no sabía como darle el valor a la variable para que posteriormente apareciera en el confirm.

Una pregunta: es necesario el "this.value"? Es decir, yo tabajo actionscript y muchas veces el this es completamente innecesario, se puede definir una ruta sin el this. Aquí es necesrio ponerlo?

Muchas gracias de nuevo. Vamos a levantar el karma. Un saludo.
  #4 (permalink)  
Antiguo 13/09/2009, 14:50
Avatar de zerokilled
Javascripter
 
Fecha de Ingreso: abril-2009
Ubicación: Isla del Encanto, La Borinqueña [+>==]
Mensajes: 8.050
Antigüedad: 15 años, 8 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
  #5 (permalink)  
Antiguo 13/09/2009, 16:01
Avatar de Eskombro  
Fecha de Ingreso: septiembre-2009
Ubicación: Colombia
Mensajes: 437
Antigüedad: 15 años, 3 meses
Puntos: 22
Respuesta: Ayuda de javascript básico!!!

Clarooo, muchas gracias por la explicación. Lo que pasa es que muchas veces en action script terminamos escribiendo ambas cosas, el this y toda la ruta, y por eso decía que a veces sobra el this. Pero Me agrada la explicación que me das porque como me estoy introduciendo al java, esto me facilita comprender las cosas para escribir las rutas donde se ubican los datos.

Entonces, si mal no entiendo, para escribir una ruta debo utilizar los name que le he dado a cada etiqueta separado por puntos. Sin embargo, cuando estoy dentro de la misma etiqueta no tengo que escribir la ruta sino simplemente el this... y este lo reemplaza. Así no tendré que cambiar las acciones cada que cambie un name, para todo el código. Muchas gracias.!!!
  #6 (permalink)  
Antiguo 13/09/2009, 16:22
Avatar de zerokilled
Javascripter
 
Fecha de Ingreso: abril-2009
Ubicación: Isla del Encanto, La Borinqueña [+>==]
Mensajes: 8.050
Antigüedad: 15 años, 8 meses
Puntos: 1485
Respuesta: Ayuda de javascript básico!!!

Cita:
Entonces, si mal no entiendo, para escribir una ruta debo utilizar los name que le he dado a cada etiqueta separado por puntos. Sin embargo, cuando estoy dentro de la misma etiqueta no tengo que escribir la ruta sino simplemente el this...
para una persona que no conoce a fondo el funcionamiento, esta bastante bien interpretado.

por otro lado, y no tan importante para el aprendizaje pero deberias al menos evitarlo, Java y JavaScript no son lo mismo. a pesar de la similitud del nombre, ambos lenguajes son totalmente diferente. quizas lo hagas por vagancia pero es mejor mencionar el nombre completo para evitar confusion. solo por dar un ejemplo, digamo alguin dice necesito un codigo java para sumar dos numeros. la operacion se puede realizar en ambos lenguajes pero como especifico Java entonces la respuesta mas segura es que se dirija al foro de Java porque no es lo mismo que JavaScript. sin embargo, si la persona hubiera dicho necesito un codigo java para animar elementos en un documento, entonces se puede asumir que quiso decir javascript. pero tambien puede darse el caso que realmente quiso decir Java y no JavaScript. en fin, mejor evitar la confusion porque al final lo que eso produce es generar respuestas innecesarias.
__________________
la maldad es una virtud humana,
y la espiritualidad es la lucha del hombre contra su maldad.
  #7 (permalink)  
Antiguo 13/09/2009, 16:29
Avatar de caricatos
Moderador
 
Fecha de Ingreso: abril-2002
Ubicación: Torremolinos (Málaga)
Mensajes: 19.607
Antigüedad: 22 años, 8 meses
Puntos: 1284
Respuesta: Ayuda de javascript básico!!!

Hola:

El atributo name simplifica la sintaxis en los elementos que lo admiten... enlaces, formularios, imágenes y ventanas (creo que también los objetos, pero son elementos menos usuales...)

De todos modos los elementos pueden referenciarse de muchas formas... si tienes tiempo y ganas, puedes ver este enlace: Nuevo destripador... podrá ver como con el DOM se puede tener acceso a absolutamente toda la página.

Otra cosilla sobre la sintaxis, es que un objeto referenciado entre puntos también puede referenciarse con el string del nombre puesto entre corchetes...

document.body.style.text
.. es igual que...
document["body"]["style"]["text"]

Saludos
__________________
Por favor:
No hagan preguntas de temas de foros en mensajes privados... no las respondo
  #8 (permalink)  
Antiguo 13/09/2009, 23:29
Avatar de Eskombro  
Fecha de Ingreso: septiembre-2009
Ubicación: Colombia
Mensajes: 437
Antigüedad: 15 años, 3 meses
Puntos: 22
Respuesta: Ayuda de javascript básico!!!

Muchisimas gracias a ambos, realmente me impresiona la gente que está dispuesta ayudar a los demás. Yo trato de hacerlo con lo que sé pero javascript (que no Java) es en algo que hasta ahora me empiezo a introducir. Les debo mil gracias. Y seguro me seguirán viendo por estos foros.
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 19:27.