IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

jQuery Discussion :

Fonction non appelée


Sujet :

jQuery

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éprouvé
    Homme Profil pro
    Inscrit en
    Mai 2004
    Messages
    803
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations forums :
    Inscription : Mai 2004
    Messages : 803
    Par défaut Fonction non appelée
    Bonjour,

    Dans un fichier js, via du Jquery, je construis des boutons de manière dynamique :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     var $newFormLi = $ ( '<li></li>' ). append ( newForm );
        var $deletePriceButton = $ ( '<button type="button" class="btn-remove" onclick="removePrice(this);">Supprimer cette durée</button>' );
        $newFormLi. append ( $deletePriceButton );
        $( this ) . before ( $newFormLi );
    Sur le onclick de ces boutons, j'appelle une fonction removePrice() se trouvant dans le même fichier js :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    onclick="removePrice(this);"
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    function removePrice(btn) {
     
        btn.parent().remove();
     
    }
    Or, lorsque je clique sur un de ces boutons, j'obtiens l'erreur suivante :

    Uncaught ReferenceError: removePrice is not defined
    at HTMLButtonElement.onclick (newPrices:1)
    Quelqu'un aurait une idée de la source du problème?

    Merci d'avance pour votre aide.

  2. #2
    Expert confirmé Avatar de Toufik83
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Janvier 2012
    Messages
    2 519
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : Maroc

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Janvier 2012
    Messages : 2 519
    Par défaut
    Salut,
    pourquoi ne pas utiliser jQuery proprement ?
    supprime l'attribut onclick du bouton et applique l'évenement clique avec jQuery
    Code javascript : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    $('body').on('click',".btn-remove",function(){
    	$(this).parent().remove();
    });

  3. #3
    Membre éprouvé
    Homme Profil pro
    Inscrit en
    Mai 2004
    Messages
    803
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations forums :
    Inscription : Mai 2004
    Messages : 803
    Par défaut
    Merci beaucoup pour ton aide. J'avais tenté de le faire ainsi, cependant, pour les boutons créés avec Jquery, ça ne fonctionnait pas avec le code suivant :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $('.btn-remove') . on ( 'click' , function ()
    .

    Mais avec le tien, ça fonctionne

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. fonction non appelée
    Par Lilouse dans le forum Général JavaScript
    Réponses: 7
    Dernier message: 29/03/2010, 11h52
  2. Trouver les fonctions non appelées
    Par KiwiJaune dans le forum Visual Studio
    Réponses: 3
    Dernier message: 19/01/2010, 14h59
  3. fonction non appelée
    Par coquero dans le forum Général JavaScript
    Réponses: 5
    Dernier message: 03/11/2008, 13h52
  4. fonction non appellée ,
    Par totoche dans le forum VB.NET
    Réponses: 5
    Dernier message: 29/08/2007, 09h36
  5. Verifier formulaire - fonction non appelée
    Par nerick dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 08/12/2005, 17h44

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo