Foros del Web » Programando para Internet » Jquery »

Jquery, pasar parametro a una funcion desde un evento click

Estas en el tema de Jquery, pasar parametro a una funcion desde un evento click en el foro de Jquery en Foros del Web. Que tal, bueno, tal vez les suene básico, pero estoy iniciando en Jquery y ahi la llevo jejejje, bien mi pregunta es la siguiente: tengo ...
  #1 (permalink)  
Antiguo 25/01/2009, 00:54
Avatar de Gerifaltus  
Fecha de Ingreso: junio-2005
Ubicación: Tabasco, México
Mensajes: 180
Antigüedad: 19 años, 4 meses
Puntos: 4
Jquery, pasar parametro a una funcion desde un evento click

Que tal, bueno, tal vez les suene básico, pero estoy iniciando en Jquery y ahi la llevo jejejje, bien mi pregunta es la siguiente:

tengo una función que muestra un calendario, tal vez algunos ya han usado ese calendario, es el siguiente:

Código:
function carga_calendario(id_contenedor){
Calendar.setup(
	{
		inputField  : id_contenedor,         
		ifFormat    : "%d-%m-%Y",    
		singleClick : false,
		weekNumbers : false,
                showsTime   : true,
                timeFormat  : "24",
	}
);
}
y la siguiente es la asignación del evento a un cuadro de texto, solo que al momento de asignarle el evento, necesito pasarle el id de ese cuadro de texto, lo que hago es lo siguiente, y no me funciona, alguna sugerencia?

Código:
$('#f_inicio').click(carga_calendario ('f_inicio'));
__________________
:::.. Todo tiene un ¿Por qué? y un ¿Para qué? ..:::
:::.. Todo se reduce a un SI y a un No ..:::
  #2 (permalink)  
Antiguo 25/01/2009, 06:56
Avatar de TresPuntoDos  
Fecha de Ingreso: septiembre-2008
Ubicación: Madrid, España
Mensajes: 242
Antigüedad: 16 años, 1 mes
Puntos: 3
Respuesta: Jquery, pasar parametro a una funcion desde un evento click

No puedes pasar eso asi ya que en el metodo click de jQuery lo que se le pasa es una funcion no una instruccion, prueba a poner esto:

Código PHP:
$('#f_inicio').click(function(){carga_calendario ('f_inicio');}); 
__________________
Tres punto Dos - Mi Blog sobre J2EE, Java, Struts y Diseño Web
Proyecto BloJ - Crea tu blog Java
  #3 (permalink)  
Antiguo 25/01/2009, 12:07
Avatar de Gerifaltus  
Fecha de Ingreso: junio-2005
Ubicación: Tabasco, México
Mensajes: 180
Antigüedad: 19 años, 4 meses
Puntos: 4
Respuesta: Jquery, pasar parametro a una funcion desde un evento click

Gracias por responder TresPuntoDos;

Efectivamente, he probado la opción que me has dado y sí funciona, ahora tengo unas dudas, estuve leyendo al acerca de Jquery y en la sección de eventos ponian algo así (tomaré el ejemplo de la función que estoy usando):

Código PHP:
$('#f_inicio').click(carga_calendario);  //he probado esto y sí funciona, pero es necesario pasarle el id del cuadro de texto. 
Pero ahora me indicas que debo agregarle la palabra function para que quede así:

Código PHP:
$('#f_inicio').click(function(){carga_calendario ('f_inicio');}); 
Entonces puedo deducir que cuando una función no necesita ó no requiere parametros, se puede usar la primera opción, de lo contrario usaría la segunda opción.

Es correcta mi deducción?

Saludos y gracias por responder :)
__________________
:::.. Todo tiene un ¿Por qué? y un ¿Para qué? ..:::
:::.. Todo se reduce a un SI y a un No ..:::
  #4 (permalink)  
Antiguo 26/01/2009, 16:42
Avatar de Gerifaltus  
Fecha de Ingreso: junio-2005
Ubicación: Tabasco, México
Mensajes: 180
Antigüedad: 19 años, 4 meses
Puntos: 4
Respuesta: Jquery, pasar parametro a una funcion desde un evento click

Que tal;

Bueno, habia dejado esto por la paz, pero seguí escribiendo codigo javascript, hasta que se me vino a la mente la palabra this, así que modifiqué el script anterior y lo dejé de esta manera

Código:
$('#f_inicio').click(function(){carga_calendario (this.id);});
De esta manera evito tener que escribir manualmente el id del cuadro de texto, ejejeje, tan fácil que no recordaba la función que cumple la palabra this.

Ok, saludos.
__________________
:::.. Todo tiene un ¿Por qué? y un ¿Para qué? ..:::
:::.. Todo se reduce a un SI y a un No ..:::
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 17:20.