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

JavaScript Discussion :

Déclenchement d'une fonction au changement d'un select


Sujet :

JavaScript

  1. #1
    Membre confirmé
    Inscrit en
    Mars 2009
    Messages
    87
    Détails du profil
    Informations forums :
    Inscription : Mars 2009
    Messages : 87
    Par défaut Déclenchement d'une fonction au changement d'un select
    Bonjour,

    J'utilise la fonction suivante afin de déclencher un fonction (fonction change de jquery) lors de la selection d'une des <option> d'un <select> et rien ne se passe en fait... :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $('select#pays').change(function(){alert('message d'alerte';});
    Avez vous une idée sur ce qu'il manque a mon code?

    Merci d'avance

    Voici le code HTML :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    <form action="index.php" name="filtre" method="post">
    		<span class="element_filtre">
    		<label>Pays</label>
    				<select name="pays" id="pays" >
    					<option value='-1' selected="selected">Choisir un pays</option>
    					<?php
                                                    mysql_connect("localhost","root");
                                                    mysql_select_db("mess");
                                                    $res = mysql_query("SELECT * FROM pays ORDER BY id");
                                                    while($row = mysql_fetch_assoc($res)){
                                                            echo "<option value='".$row["pays"]."'>".$row["pays"]."</option>";
                                                    }
                                            ?>
    				</select>
    		</span>

  2. #2
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 659
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 75
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 659
    Billets dans le blog
    1
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $('select#pays').onchange=function(){alert('message d'alerte');};
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

  3. #3
    Membre confirmé
    Inscrit en
    Mars 2009
    Messages
    87
    Détails du profil
    Informations forums :
    Inscription : Mars 2009
    Messages : 87
    Par défaut
    J'ai le message d'erreur suivant en essayant ta solution :

    $ is not defined

    Est-tu sur cette syntaxe?

  4. #4
    Rédacteur

    Avatar de Bovino
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juin 2008
    Messages
    23 647
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 55
    Localisation : France, Gironde (Aquitaine)

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

    Informations forums :
    Inscription : Juin 2008
    Messages : 23 647
    Billets dans le blog
    20
    Par défaut
    En échappant les quotes, ça risque de mieux fonctionner
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $('select#pays').change(function(){alert('message d\'alerte';});
    Pas de question technique par MP !
    Tout le monde peut participer à developpez.com, vous avez une idée, contactez-moi !
    Mes formations video2brain : La formation complète sur JavaScriptJavaScript et le DOM par la pratiquePHP 5 et MySQL : les fondamentaux
    Mon livre sur jQuery
    Module Firefox / Chrome d'intégration de JSFiddle et CodePen sur le forum

  5. #5
    Membre confirmé
    Inscrit en
    Mars 2009
    Messages
    87
    Détails du profil
    Informations forums :
    Inscription : Mars 2009
    Messages : 87
    Par défaut
    Bien vu, mais cela me donne toujours le meme message d'erreur dans Firebug au chargement de la page:

    $ is not defined

  6. #6
    Rédacteur/Modérateur
    Avatar de andry.aime
    Homme Profil pro
    Inscrit en
    Septembre 2007
    Messages
    8 391
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Ile Maurice

    Informations forums :
    Inscription : Septembre 2007
    Messages : 8 391
    Par défaut
    As -tu inclus jquery dans la page courante?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <script type="text/javascript" src="./js/jquery-1.3.1.min.js"></script>

  7. #7
    Membre confirmé
    Inscrit en
    Mars 2009
    Messages
    87
    Détails du profil
    Informations forums :
    Inscription : Mars 2009
    Messages : 87
    Par défaut
    oui, j'ai bien inclus la librairie jquery, tout a l'air ok a priori.... Mais l'erreur persiste...

    Pour rappel, voici le code HTML du <select> correspondant :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    <form action="index.php" name="filtre" method="post">
    		<span class="element_filtre">
    		<label>Pays</label>
    				<select name="pays" id="pays" >
    					<option value='-1' selected="selected">Choisir un pays</option>
    					<?php
                                                    mysql_connect("localhost","root");
                                                    mysql_select_db("mess");
                                                    $res = mysql_query("SELECT * FROM pays ORDER BY id");
                                                    while($row = mysql_fetch_assoc($res)){
                                                            echo "<option value='".$row["pays"]."'>".$row["pays"]."</option>";
                                                    }
                                            ?>
    				</select>
    		</span>

  8. #8
    Rédacteur/Modérateur
    Avatar de andry.aime
    Homme Profil pro
    Inscrit en
    Septembre 2007
    Messages
    8 391
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Ile Maurice

    Informations forums :
    Inscription : Septembre 2007
    Messages : 8 391
    Par défaut
    On peut voir le code complet?

  9. #9
    Membre confirmé
    Inscrit en
    Mars 2009
    Messages
    87
    Détails du profil
    Informations forums :
    Inscription : Mars 2009
    Messages : 87
    Par défaut
    oui bien sur,

    voici la page de depart :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr">
        <head>
    <meta http-equiv="Content-Type" content="text/html" charset="iso-8859-1" />
    		<link rel="stylesheet" media="screen" type="text/css" title="post" href="css/index.css" />
    <script type="text/javascript" src="js/jquery-1.3.2.min.js"></script>
    <script type='text/javascript' src='js/menu_index1.js'></script>
     
    </head>
        <body>
    <fieldset>
    		<div id="filtre">
     
    		<form action="index.php" name="filtre" method="post">
    		<span class="element_filtre">
    		<label>Pays</label>
    				<select name="pays" id="pays" >
    					<option value='-1' selected="selected">Choisir un pays</option>
    					<?php
                                                    mysql_connect("localhost","root");
                                                    mysql_select_db("mess");
                                                    $res = mysql_query("SELECT * FROM pays ORDER BY id");
                                                    while($row = mysql_fetch_assoc($res)){
                                                            echo "<option value='".$row["pays"]."'>".$row["pays"]."</option>";
                                                    }
                                            ?>
    				</select>
    		</span>
    		<span class="element_filtre">
    		<label>Region</label>
    				<span id="id_region" style="display:inline">
    				<select id="region" name="region" >
    					<option value='-1' selected="selected">Choisir un pays</option>
    					<option value='Alsace' selected="selected">Alsace</option>
    				</select>
    				</span>
    		</span>
    <span id="pp">
    		<input type="submit" name="submit" id="submit" value="Lancer le filtre"  /></span>
    </form>
    </div>
    </fieldset>
     </body>
    </html>
    et le fichier index_menu1.js :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    $(document).ready(function () {
     
    		$('select #pays').change(function(){alert('message d\'alerte');});
     
    		});
    Donc rien ne se passe lorsque je selectionne un des pays dans le <select> "pays" et lors du chargement de la page, j'ai l'erreur suivante :

    $ is not defined
    [Break on this error] $(document).ready(function () {

    J'ai donc l'impression qu'il bloque des le début du code de la page menu_index1.js...

    Merci d'avance pour votre aide!

  10. #10
    Membre confirmé
    Inscrit en
    Mars 2009
    Messages
    87
    Détails du profil
    Informations forums :
    Inscription : Mars 2009
    Messages : 87
    Par défaut
    Je viens de trouver!
    Je declarais trop tot mes fichiers .js (avant de declarer jquery...)
    Merci pour votre aide

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

Discussions similaires

  1. Déclenchement d'une fonction par rapport à une autre
    Par clickandgo dans le forum VBA Access
    Réponses: 4
    Dernier message: 21/06/2013, 20h08
  2. Réponses: 1
    Dernier message: 26/04/2011, 08h35
  3. [Toutes versions] Déclenchement d'une fonction dans SAP
    Par yonnel dans le forum VBA Access
    Réponses: 2
    Dernier message: 25/04/2011, 11h16
  4. Réponses: 4
    Dernier message: 21/01/2009, 08h15
  5. déclenchement d'une Fonction Java en cliquant sur un bouton
    Par dracula2000 dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 31/03/2006, 11h34

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