[Jquery-Es] paso de parametros <a>
Choan Gálvez
choan.galvez en gmail.com
Dom Sep 14 07:01:23 PDT 2008
Hola.
On Sep 14, 2008, at 8:52 AM, gonzalo figueroa wrote:
> hola, espero que todos se encuentren muy bien al leer esto.
>
> mi pregunta es que necesito tomar unos valores de un link, lo tengo
> de esta forma:
>
> <a id="id" onClick="parametro($valor1,$valor2)">
>
> al llamar de forma "normal" esto en una funcion lo muestra perfecto:
>
> function parametro(valor1,valor2){
> alert (valor1+","+valor2);
> }
>
> el problema es cuando lo quiero llamar con jquery
> dentro de $(document).ready no se muestra el alert, lo eh intentado
> de estas 2 formas
>
> $(document).ready(function(){
> function parametro(valor1,valor2){
> alert (valor1+","+valor2);
> }
> });
`ready` recibe como argumento una función que ejecuta tan pronto como
se haya cargado el árbol del documento. En el caso que nos ofreces, se
declarará la función `parametro`, pero no se ejecutará.
Si quisieras, simplemente, lanzar un alert:
$(document).ready(function() {
alert("hey! ho! let's go");
});
> no hay caso
>
> $(document).ready(function(){
> $("a#id").click(function parametro(valor1,valor2){
> alert(valor1,valor2);
> });
> });
Aquí estás asignando el manejador, pero los parámetros que éste recibe
no son los que tú esperas. El manejador va a recibir como primer
argumento el objeto que representa el evento (es habitual usar `e`
como nombre de la variable). Y como segundo argumento... no, no va a
recibir más argumentos.
Si estoy entendiendo bien lo que pretendes, una solución sencilla
sería esta:
function hacerCosasDeVerdad(param1, param2) {
// lo que sea que hayas de hacer
}
$(document).ready(function() {
$('a#id').click(function() {
hacerCosasDeVerdad(123, 456);
});
});
Hay otras opciones, pero no son tan entendibles. Dejémoslas para más
adelante.
Respecto a tu enlace, recuerda: los enlaces sin "href" y el marcado
script-dependiente incrustado en el documento hacen llorar al niño
Jesús y a Jeremy Keith.
Un saludo.
--
Choan Gálvez
<http://choangalvez.nom.es/>
Más información sobre la lista de distribución Jquery-Es