Hola me gustaria cambiar el valor de la propiedad 'onclick' de un elemento con jquery, lo intento con:
$('#id').attr({onclick: 'funciontal();'});
Pero no funciona
¿Como puedo hacerlo?
Gracias!
| |||
Cambiar valor onclick con jquery Hola me gustaria cambiar el valor de la propiedad 'onclick' de un elemento con jquery, lo intento con: $('#id').attr({onclick: 'funciontal();'}); Pero no funciona ¿Como puedo hacerlo? Gracias!
__________________ http://www.pkmrpg.es |
| |||
Respuesta: Cambiar valor onclick con jquery Hola mayid, veras, lo que quiero es cambiar la funcion javascript que se realizara al pulsar sobre un boton... Como tu dices no se como hacerlo, osea seria algo asi:
Código:
?$('#id').click(funcion(){ laotrafuncion('tal', 'tal'); }); Gracias y responde!
__________________ http://www.pkmrpg.es |
| ||||
Respuesta: Cambiar valor onclick con jquery No. Esto seria asi: Cita: La funcion que se ejecutara sera anonima. No necesita nombre porque la manera de llamarla es en click.$('#id').click(funcion('tal', 'tal'){ }); Pero la verdad no se bien como ayudarte porque esto sumaria otro evento al click, no reemplazando el anterior evento. La solucion esta en uno de los posts de hace un par de semanas atras, segun recuerdo. Ahora lo busco. |
| ||||
Respuesta: Cambiar valor onclick con jquery A ver si esto te sirve: Cita: unbind es para quitar el evento anterior. El resto es asignar una nueva funcionalidad al click, pasando dos parametros a la funcion por si los necesitas.$('#id').unbind('click'); $("#id").click(function ('tal', 'tal') { }; (editado): me acabo de dar cuenta de que pasar valores a la funcion asi no es posible. Pero si realmente necesitaras pasar un valor que no puedas recuperar directamente desde adento, le buscamos la vuelta. Cita: $('#id').unbind('click'); $("#id").click(function () { // $("#tal").val() // lo que necesites hacer }; Última edición por mayid; 23/11/2009 a las 06:39 |
| |||
Respuesta: Cambiar valor onclick con jquery Hola mayid, muchas gracias por responder. Tiene que haber alguna manera de cambiar el valor de onclick de un elemento... tan simple como eso... De la manera que dices lo intento asi: Código HTML: $('#elemento').click(function(){ $('#bloque_carga').show(); $('.carga').attr({disabled: 'disabled'}); xajax_AccionMoverPosicion('adelante', '{$pokemon[id]}');}); ¿Algo que se pueda hacer? y si se puede evitar tener que poner el codigo que hace mi funcion hay en vez de cambiar simplemente el valor de onclick mejor.. Muchas gracias!
__________________ http://www.pkmrpg.es |
| ||||
Respuesta: Cambiar valor onclick con jquery Fijate que ya encontarmos la respuesta. La postee, pero se te paso desapercibida: Cita: Eso quita el evento anterior. Con lo cual podes anexar luego un evento nuevo en click:$('#id').unbind('click'); Cita: Ahora, a esto no lo entendi:$('#elemento').unbind('click'); $('#elemento').click(function(){ $('#bloque_carga').show(); $('.carga').attr({disabled: 'disabled'}); xajax_AccionMoverPosicion('adelante', '{$pokemon[id]}'); }); Cita: y si se puede evitar tener que poner el codigo que hace mi funcion hay en vez de cambiar simplemente el valor de onclick mejor.. |
| |||
Respuesta: Cambiar valor onclick con jquery Gracias mayid, A lo que me refiero esque yo intento cambiar: onclick="funcion('tal', 'tal'); y me gustaria cambiarlo por onclick= "funcion('tal','taldependevariablephp'); Y ojala fuera tan facil como un .attrib(onclick= 'valor') pero bueno si tiene que ser asi pues asi sera xD gracias!
__________________ http://www.pkmrpg.es |
| ||||
Respuesta: Cambiar valor onclick con jquery Pero creo que tenes un error de concepto entonces. Lo que hay ahi no son constantes, sino variables. No tenes por que cambiarlas. Cita: Tal y tal_ se usan solo dentro de la funcion, y representan valores pero en si ellas son variables, no valores. Lo que tenes que hacer sencillamente es llamar a la funcion pasandoles valores diferentes y listo:funcion(tal, tal_){} Cita: } function prueba(tal, cual){ alert (tal); alert(cual?; return false; } <a href=#" onclick="prueba('esto','que esta bueno')"> toca </a> <a href=#" onclick="prueba('aqui tambien','hay contenidos')"> toca , dale </a> |
| |||
Respuesta: Cambiar valor onclick con jquery Hola mayid creo que no me has entendido xD, eso ya lo se, a lo que me refiero esque tendria que haber alguna forma de cambiar la propiedad "onclick" mas facilmente y no tener que hacer eso no se si me enteindes.. Bueno voy a ver si lo consigo. gracias!
__________________ http://www.pkmrpg.es |
| |||
Respuesta: Cambiar valor onclick con jquery Hola mayid creo que no me has entendido xD, eso ya lo se, a lo que me refiero esque tendria que haber alguna forma de cambiar la propiedad "onclick" mas facilmente y no tener que hacer eso no se si me enteindes.. Bueno voy a ver si lo consigo. EDIT Nada sige sin funcionar. utilizo este codigo: Código HTML: $('#adelante1').unbind('click'); $('#adelante1').click(function() { $('#bloque_carga').show(); $('.carga').attr({disabled: 'disabled'}); xajax_AccionMoverPosicion('adelante', 'Charmander');}); ¿Alguna solucion? Gracias! gracias!
__________________ http://www.pkmrpg.es |
| ||||
Respuesta: Cambiar valor onclick con jquery Estoy leyendo bind / unbind. Fijate si te sirve: http://docs.jquery.com/Events/unbind Y si, es cierto, no entiendo que es eso que queres como via facil. Pero quizas lo que intentes es declarar la funcion por fuera del click, e invocarla con el click.... cosa que en el link que te paso se muestra con ejemplo. Lo que saco en limpio: es que para hacer el unbind hay que escribir tambien el nombre de la funcion que se esta desligando: $("#adelante1").unbind('click', funcionvieja) Esto si es que tu primera accion tenia un nombre declarado para la funcion. |
| |||
Respuesta: Cambiar valor onclick con jquery Hola, sige sin funcionarme.. En fin estoy intentando hacer esto de otra forma sin tener que modificar el onclick.. Gracias de todas formas ojala se pudiera cambiar tan facil como cambiar un value. Pero gracias por todo!
__________________ http://www.pkmrpg.es |
| ||||
Respuesta: Cambiar valor onclick con jquery Bueno, volviendo a tu mensaje original: Cita: El equivalente "sencillo" seria:$('#id').attr({onclick: 'funciontal();'}); Cita: Sin parentesis. Eso se deduce del ultimo link que te pase. $("#adelante1").unbind('click', funcionvieja).bind('click',funcionnueva); |
| |||
Respuesta: Cambiar valor onclick con jquery Hola mayid, Haga como lo haga el valor del onclick de mi elemento NO CAMBIA NO FUNCIONA... y hago exactamente como tu dices..
__________________ http://www.pkmrpg.es |
| |||
Respuesta: Cambiar valor onclick con jquery A ver si asi queda mas claro: Cuando pulsas en el elemento este llama a una funcion javascript que a su vez varia el propio onclick del elemento para que se ejecute una funcion diferente, que yo quiero indicar pero no puedo hacerlo porque no es valido el $('#elemento').attr({onclick: 'otrafuncionquequieroesepcificar'}); ¿Como lo hago entonces? gracias!
__________________ http://www.pkmrpg.es |
| ||||
Respuesta: Cambiar valor onclick con jquery Si, creo que entiendo. Al hacer click, se ejecuta una funcion. Pero solo la primera vez. Ya la segunda vez y de ahi en adelante tiene que ejecutarse otra funcion. Cierto? Solo una duda: el elemento es un enlace o una etiqueta cualquiera (div, span, lo que fuere). |
| |||
Respuesta: Cambiar valor onclick con jquery Si asi es, osea cada vez que haces click (ES UNA IMAGEN) cambio no la funcion que hay en el evento sino un argumento de esta (En vez de MoverPosicion('derecha', 'id4'), cambiarlo a MoverPosicion('derecha', 'id5'). A ver si asi ;) Saludos y gracias!
__________________ http://www.pkmrpg.es |
| ||||
Respuesta: Cambiar valor onclick con jquery Y. lo logico seria usar un variable en vez de una constante. valor = 'ide4'; <img src="#" onclick="MoverPosicion('derecha', valor); cuatro = 'ide5' " /> |
| |||
Respuesta: Cambiar valor onclick con jquery .mira mas abajo
__________________ http://www.pkmrpg.es Última edición por astut; 28/11/2009 a las 08:44 |
| |||
Respuesta: Cambiar valor onclick con jquery Esque yo no quiero quitar una funcion vieja y poner una nueva, sino cambiar el valor de un argumento de esta, en vez de: MoverPos('adelante', pos3) que sea MoverPos('adelante', pos4) Ya que al mover la pos3 hacia adelante, ya no sera pos3, sino pos4 y quiero cambiar solo ese argumento ¿Ahora mejor? Gracias!
__________________ http://www.pkmrpg.es |
| ||||
Respuesta: Cambiar valor onclick con jquery Te estas confundiendo. Escribir pos3 sin comillas hace referencia a una variable, y no a una constante. Es decir: pos3 puede valer lo que quieras, dinamicamente. Vos conoces la sintaxis de javascript? Podes tener esto declarado al iniciar la pagina. var pos = "tres"; Y luego, tras el click, cambiarle el valor. pos = "cuatro"; Si no tenes en claro como es esto de las variables decilo porque es importante. |
| |||
Respuesta: Cambiar valor onclick con jquery Hola mayid.. se perfectamente como funciona lo de las variables, la cosa esque en mi problema no puede tratarse de una variable! es un valor y ya esta y necesito modificar ese argumento. Quiero hacerlo asi no de otra forma
__________________ http://www.pkmrpg.es |
| ||||
Respuesta: Cambiar valor onclick con jquery Bueno, no se como es tu caso en concreto. Pero aca hay algo raro: Cita: Cuando declaras las funciones, asignas dos entradas de variable.onclick="funcion('tal', 'tal'); y me gustaria cambiarlo por onclick= "funcion('tal','taldependevariablephp'); function funcion (val1, val2) ... } Asi como vos originalmente lo pensaste, eso que esta entre parentesis es un valor fijo que le estas pasando a la funcion "funcion" (por llamarla como vos la llamaste en tu ejemplo). Que por mas que sea un valor fijo, dentro de la funcion ya es reconocida como val1 o val2, es decir como variable. En fin, teniendo declarado esto originalmente: var var2 = "valor2"; Cita: Creo que lo unico que resta hacer ahora es cambiar el valro de la var2, y no de la funcion onclick. onclick = MoverPos('adelante', var2) |
| |||
Respuesta: Cambiar valor onclick con jquery Hola mayid, reitero: Cita: Eso es lo que quiero conseguir nada mas. Esque yo no quiero quitar una funcion vieja y poner una nueva, sino cambiar el valor de un argumento de esta, en vez de: MoverPos('adelante', pos3) que sea MoverPos('adelante', pos4) Ya que al mover la pos3 hacia adelante, ya no sera pos3, sino pos4 y quiero cambiar solo ese argumento ¿Ahora mejor? Gracias!
__________________ http://www.pkmrpg.es |
| |||
Respuesta: Cambiar valor onclick con jquery ¿Nadie de nadie? gracias!
__________________ http://www.pkmrpg.es |
| ||||
Respuesta: Cambiar valor onclick con jquery Para mi se soluciona con variables, pero creo que no viste bien el ejemplo: Cita: Tras el primer click, seteamos "valor" con un nuevo valor... Entonces al segundo click ya lo que vamos a pasar es "ide5" en vez de "ide4". valor = 'ide4'; <img src="#" onclick="MoverPosicion('derecha', valor); valor = 'ide5' " /> |
| |||
Respuesta: Cambiar valor onclick con jquery depende para que lo quieres, ¿porqué no pones el html y explicas a qué quieres llegar? para que cambie pos1, pos2, pos3 y asi sucesivamente declaras una variable global e incrementas de a 1 en cada clic, como un contador y concatenas la cadena 'pos' con la variable Código HTML: <html> <head> <title>prueba</title> <script type="text/javascript" src="jquery.js"></script> <script type="text/javascript"> var indice = 1; $().ready( function (){ $('a').click( function (){ $('#text').html('pos'+indice); indice++; }); }); </script> </head> <body> <a href="#">Click</a><br /> <a href="#">Click</a><br /> <a href="#">Click</a><br /> <a href="#">Click</a><br /> <div id="text"></div> </body> </html> |
| |||
Respuesta: Cambiar valor onclick con jquery Es simple el porque no puedo: tengo estas 6 variables: pos1= 1 pos2= 2 pos3= 3 pos4= 4 pos5= 5 pos6= 6 Ahora desde xajax quiero cambiar la posicion del pos6 y hago: pos6= 4. Vale, ahora si quiero volver a cambiar la pos6, ¿Como se que variable es 6? Y no me vale un if (pos1= 6) if (pos2= 6) etc... Tiene que ser desde dentro desde el propio onlcick sino no me sirve.. Esto lo hago para mover los pokemon de posicion en la seccion "Equipo" del juego web que estoy desarrollando Ahora?
__________________ http://www.pkmrpg.es |
| ||||
Respuesta: Cambiar valor onclick con jquery Es decir que tenes 6 images, y que les tenes asignada una posicion dinamica. Para evitar que no coincida el numero en la variable con el valor asignado, yo pondria en vez de esto: pos1= 1 pos2= 2 pos3= 3 pos4= 4 pos5= 5 pos6= 6 ... un id a cada foto (viendo la pagina nos seria mejor imaginarlo, pero parece que no esta online). Teniendo los objetos identificados por id habria que reconstruir la logica de tu funcion, pero me parece que lo tenes que hacer porque estas trabado. De cualquier manera, yo quisiera ver esa dichosa funcion. Mismo los tags html como para tener a que atenerse. Dicho sea de paso, las capturas de pantalla de tu juego estan buenisimas. Muy bueno que puedas hacer ese juego. |