Bonjour à toutes et à tous,
j'ai un lien dont il faudrais bloquer la redirection

 <p align='left'> <a class='add_panier'  href='../../php/addcoeur.php?an=3'><img src='../../img/c.png' onclick='javascript:this.src=\"../../img/c2.png\";'/></a></p>";  

event.preventDefault(); ne semble pas fonctionner sur Safari. Comment faire pour empécher de charger de page à la suite d'un click sur un href ?

j'ai essayé ça et c'est pareil

(function($){       
    if(event && event.stopPropagation && event.preventDefault)
    {
        event.stopPropagation();
        event.preventDefault();
    }

    return false;   
    })(jQuery);
}

et çà bé c'est pareil ???

(function($){       
    $('.add_panier').click(function(event){
        alert('coucou');    
        event.preventDefault();

})(jQuery);
}

merci pour votre aide

12 réponses


Salut,
Tu vois le Alert('coucou') ?

@plus

Pierre

Salut pierrot
Non le coucou ne s'affiche pas, comme si je ne rentrais pas dans la fonction... Le truc c'est que ça fonctionne sur Firefox pourtant...

Essaye ça ;)

    (function($){       
    $('.add_panier').on('click',function(event){
        alert('coucou');    
        event.preventDefault();
        });
    }

@plus

Pierre

Comme ceci :

(function($){       
    $('.add_panier').on('click', function(e){
        e.preventDefault();
    });
})(jQuery);

(évidemment, en considérant que tu as bien chargé la library jquery avant)

Merci pour votre aide,

Bé aucun des deux ne bloque la redirection, et pierrot ça n'affiche pas "coucou" zut de zut

voila le code en plus large...

<script src="../js/jquery.ui.js"></script>
<script src="../js/main.js"></script>
<div id="popup_Coeur" class="popup_blockCoeur" >
    <div id="infoCoeur" style="width:390; height:700" >
        <br/>&nbsp;&nbsp;&nbsp;<font face="verdana" color="#000087" >L'annonce a &eacute;t&eacute; ajout&eacute;e au panier.    
    </div>  
</div>
<script >
(function($){       
    $('.add_panier').on('click', function(e){
        e.preventDefault();
    });
})(jQuery);
</script>   

la div "popup_Coeur" sera affiché mais ce csera dans un deuxième temps car avant il faut résoudre le probleme de redirection

Je vois pas de class add_panier !!??

elle est encore plus haut dans le code. Sur un lien que voici

<a class='add_panier'  href='../../php/addcoeur.php?an=".$result["ID"]."'><img src='../../img/c.png' width='30' id='change' onclick='javascript:this.src=\"../../img/c2.png\";'/></a>

Je viens de déplacer le code dans une autre page et ça fonctionne. C'est donc qu'il y a un truc qui cloche ailleurs dans la page, je continuerais à frafouiller demain

Salut :
regarde bien ta ligne de code !!!

<p align='left'> <a class='add_panier'  href='../../php/addcoeur.php?an=3'><img src='../../img/c.png' onclick='javascript:this.src=\"../../img/c2.png\";'/></a></p>";  

elle comprend : onclick='javascript:this.src=\"../../img/c2.png\";'/>

et le onclick dans le onclick, ça doit bouilloner un max : D
elève le onclick dans ton <a> </a> et çq devrait fonctionner ;)

@plus

Pierre

Ca y est c'etait un probleme de librairie !!!!!!

je le met si ça peu aider quelqu'un

    <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.2/jquery.min.js"></script>

Merci infiniment pour votre aide

La parenthèse dans mon message n'était pas inutile ...