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 :

Mise à jour de contenu de div


Sujet :

jQuery

  1. #1
    Membre averti

    Profil pro
    Inscrit en
    Mars 2003
    Messages
    52
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France

    Informations forums :
    Inscription : Mars 2003
    Messages : 52
    Par défaut Mise à jour de contenu de div
    Bonjour,

    Je rencontre un problème dans un formulaire : j'ai un premier champs qui me remplit le second. Sur celui-ci j'ai déclaré un évènement onChange de manière à ce que lorsqu'on fait une sélection sur le deuxième champs, une DIV se remplit avec certaines informations en rapport avec la sélection. Hors mon problème est que ma div ne se met pas du tout à jour.

    Je me demandais si ça ne posait pas un problème d'avoir un évènement déclaré sur un élément dont le contenu est rechargé ?

    Pour information, voici le code source de mon formulaire
    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
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
     
    <!-- SECTION JAVASCRIPT -->
    <script type="text/javascript" language="javascript">
        $(function(){
          $("select#select_chapitre").change(function(){
            $.getJSON("bin/recherche_moduleBymeteoAndChapitre.php",{id_meteo: $("select#select_meteo").val(), id: $(this).val(), ajax: 'true'}, function(j) {
            var options = '';
            //alert(j);
            for (var i = 0; i < j.length; i++) {
                options += '<option value="' + j[i].optionValue + '">' + j[i].optionDisplay + '</option>';
            }
            $("#select_module").html(options);
            $('#select_module option:first').attr('selected', 'selected');
            })
          });
     
          $("select#select_module").change(function(){
            $.getJSON("bin/recherche_descparams.php",{id_module: $("select#select_module").val(), ajax: 'true'}, function(j) {
            alert(j);
            for (var i = 0; i < j.length; i++) {
                data += j[i];
            }
            $("div#desc_params").empty();
            $("div#desc_params").append(data);
            })
          });
     
            $(".button").click(function() {
                var nom = $("#par_nom").val();
                var valeur = $("#par_value").val();
                var id_module = $("select#select_module").val();
                var id_meteo = $("select#select_meteo").val();
                var id_chapitre = $("select#select_chapitre").val();
                var text_module = $("select#select_module:selected").text();
     
                var dataString = 'nom='+ nom + '&valeur=' + valeur + '&id_module=' + id_module + '&id_meteo=' + id_meteo + '&id_chapitre=' + id_chapitre;
                //alert(dataString); return false;
     
                $.ajax({
                type: "POST",
                url: "bin/creer_param.php",
                data: dataString,
                success: function(data) {
                    $('#div_form').html(data);
                }
                });
                return false;
     
            })
        })
    </script>
    <div id="div_form">
        <form id="crea_param" action="#" method="post">
            <fieldset>
            <legend>Cr&eacute;ation de modules </legend>
            <p>
                Pour cr&eacute;er un param&egrave;tre, il faut lui definir un nom, une valeur et renseigner la soci&eacute;t&eacute; et le projet<br/>
            </p>
            <dl>
                <dt><label for="select_meteo">Meteo :</label></dt>
                <dd>
                    <select size="1" name="select_meteo" id="select_meteo">
                        <?php AfficheTTMeteoForParams(); ?>
                    </select>
                </dd>
            </dl>
            <dl>
                <dt><label for="select_chapitre">Chapitre :</label></dt>
                <dd>
                    <select size="1" name="select_chapitre" id="select_chapitre">
                      <option value="0"><-- S&eacute;lectionner un chapitre--></option>
                      <option value="1">1- Synth&egrave;se</option>
                      <option value="2">2 - Fonctionnel</option>
                      <option value="3">3 -Technique</option>
                    </select>
                </dd>
            </dl>
            <dl>
                <dt><label for="select_module">Module :</label></dt>
                <dd>
                    <select size="1" name="select_module" id="select_module">
                        <option value=0><-- S&eacute;lectionner une m&eacute;t&eacute;o et un chapitre--></option>
                    </select>
                </dd>
            </dl>
            <dl>
                <dt><label for="par_nom">Nom du param&egrave;tre :</label></dt>
                <dd>
                    <input type="text" size="60" value="" name="par_nom" id="par_nom" />
                </dd>
            </dl>
            <dl>
                <dt><label for="par_value">Valeur :</label></dt>
                <dd>
                  <input type="text" size="60" value="" name="par_value" id="par_value" />
                </dd>
            </dl>
            </fieldset>
            <fieldset class="action">
                <input type="submit" name="submit" class="button" id="button" value="Enregistrez le param&egrave;tre" />
            </fieldset>
        </form>
    </div>
    <div id="desc_params" name="desc_params">
      Description des param&eacute;tres : <br/>
    </div>

  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
    regarde du coté de on() ou delegate()
    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 averti

    Profil pro
    Inscrit en
    Mars 2003
    Messages
    52
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France

    Informations forums :
    Inscription : Mars 2003
    Messages : 52
    Par défaut
    Hum....
    Je viens de tester avec le on, mais c'est pas mieux. Je vais voir avec delegate.

    Voici le code pour l'instant :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
          $("select#select_module").on("change",function(){
            $.getJSON("bin/recherche_descparams.php",{id_module: $("select#select_module").val(), ajax: 'true'}, function(j) {
            alert(j);
            for (var i = 0; i < j.length; i++) {
                data += j[i];
            }
            $("div#desc_params").empty();
            $("div#desc_params").append(data);
            })
          });

  4. #4
    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#select_module")
    un id etant unique que la page ton selecteur est redondant

    est suffisant....

    ensuite
    jette un oeil sur ce post
    http://www.developpez.net/forums/d12...light=delegate
    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 !

Discussions similaires

  1. Réponses: 10
    Dernier message: 03/11/2008, 19h40
  2. [JLabel] Problème de mise à jour du contenu
    Par Traroth2 dans le forum Composants
    Réponses: 9
    Dernier message: 25/06/2008, 11h59
  3. Réponses: 2
    Dernier message: 24/03/2008, 17h59
  4. Réponses: 3
    Dernier message: 19/07/2007, 15h46
  5. Comparaison et mise à jour de contenu
    Par c-ve dans le forum Langage SQL
    Réponses: 3
    Dernier message: 14/06/2007, 20h58

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