Foros del Web » Programando para Internet » Javascript »

Duda con onclick!!!

Estas en el tema de Duda con onclick!!! en el foro de Javascript en Foros del Web. Hola a todos!!!! Amigos, se que es una sencillez lo que voy a preguntar, pero definitivamente yo no me lo se y me esta "partiendo ...
  #1 (permalink)  
Antiguo 11/06/2010, 13:31
 
Fecha de Ingreso: mayo-2009
Ubicación: La Habana
Mensajes: 92
Antigüedad: 15 años, 6 meses
Puntos: 0
Pregunta Duda con onclick!!!

Hola a todos!!!!
Amigos, se que es una sencillez lo que voy a preguntar, pero definitivamente yo no me lo se y me esta "partiendo la cabeza el no saber". Mi problema es el siguiente:

tengo esta estructura HTML(Ejemplo)

Código HTML:
 <ul>
        <li onclick="javascript:alert(1);">
            <span>
                <input type="checkbox" name="input-1" id="id-input-1">
                <label for="id-input-1">
                    <a>Mensaje de prueba</a>
                </label>
            </span>
        </li>
    </ul> 
lo que pasa es que cuando doy clic encima del "<li>" me muestra el mensaje de alerta dos veces, cuando yo quisiera que se mostrara una sola vez....en realidad, lo que hay en el clic del "<li>" es una super función en javascript que es muy grande y por eso no la pongo, pero lo que necesito es que esa función se ejecute una sola vez, en vez de dos, como actualmente lo esta haciendo.

Espero que me hayan entendido y me puedan ayudar, desde ya muchas gracias por su atención!!!

saludos, kceres
  #2 (permalink)  
Antiguo 11/06/2010, 13:40
rpv
 
Fecha de Ingreso: febrero-2010
Mensajes: 275
Antigüedad: 14 años, 9 meses
Puntos: 10
Respuesta: Duda con onclick!!!

elimina el javascript: de tu onclick.
  #3 (permalink)  
Antiguo 11/06/2010, 13:44
 
Fecha de Ingreso: mayo-2009
Ubicación: La Habana
Mensajes: 92
Antigüedad: 15 años, 6 meses
Puntos: 0
Respuesta: Duda con onclick!!!

el javascript en el onclick es casi que burocratismo(no es obligado ponerlo), pero ya habia probado con quitarlo y si sigue saliendo dos veces igual...estuve probando y si le quito el for al label solo se ejecuta una sola vez(como deseo), pero tendría que marcar el checkbox mediante javascript o jQuery.

gracias por tu pronta respuesta!!!

saludos, kceres
  #4 (permalink)  
Antiguo 11/06/2010, 13:54
Avatar de Panino5001
Me alejo de Omelas
 
Fecha de Ingreso: mayo-2004
Ubicación: -34.637167,-58.462984
Mensajes: 5.148
Antigüedad: 20 años, 5 meses
Puntos: 834
Respuesta: Duda con onclick!!!

Quizá te convenga colocar el evento en otro elemento. Si no, con algo así te funcionaría pero no sé si ése será tu objetivo, que se dispare sólo cuando hacen click sobre el li:
Código PHP:
<ul>
        <
li onclick="(function(e,t){var el=e.srcElement || e.target;if(el!=t)return;alert(1);})(event,this)">
            <
span>
                <
input type="checkbox" name="input-1" id="id-input-1">
                <
label for="id-input-1">
                    <
a>Mensaje de prueba</a>
                </
label>
            </
span>
        </
li>
    </
ul
  #5 (permalink)  
Antiguo 11/06/2010, 14:06
 
Fecha de Ingreso: mayo-2009
Ubicación: La Habana
Mensajes: 92
Antigüedad: 15 años, 6 meses
Puntos: 0
Respuesta: Duda con onclick!!!

lo que he hecho es poner una funcion para el label y otra para el input por asi como me comentas Panino5001 solo se ejecuta cuando doy exactamente clic en el "li" y la idea es que cuando doy clic en el label o en el input que se marque el input, es por eso que estaba poniendo el evento en el "li" porque a mi entender como que abarcaba todo, pues se ejecutaria una sola vez, no dos.

saludos, kceres

Etiquetas: onclick
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 06:48.