11540 sujets

JavaScript, DOM et API Web HTML5

Salut tout le monde,

Comme vous pouvez le voir ici (oui c'est moche pour l'instant) deux formulaires : un premier qui affiche les infos d'une table d'une bd. Et un deuxième qui demande de choisir 2 dates. Alors, quand je fais le premier envoyer, un calcule se fait sur le % de satisfaction, ça marche.

http://nsa33.casimages.com/img/2013/05/02/130502060501980072.png

Après avoir entré deux dates, l'un des résultats est parti :

http://nsa34.casimages.com/img/2013/05/02/130502060239447024.png

Cependant maintenant, lorsque je refais le premier envoyé, la page se charge, et ... rien (je précise que je ne veux pas que la page se charge).
Voici le code principale :

<script type="text/javascript">
            $(function(){
                $(".form1").submit(function(){
                    var tab = new Array();
                    var nb=0;
                    $("input:checkbox:checked").each(function(){
                        tab[nb]=$(this).val();
                        nb=nb+1;
                    });
     
                    $.post("pourcentage.php",{'tab':tab, nb:nb},function(data){
                            if(data!="Aucun sondage choisi!"){
                                $('#result').empty().append(data);
                                $('.error').empty();
                            }
                            else
                            {
                                $('.error').empty().append(data);
                            }
                    });
                    return false;
                });
                 
                $("#form2").submit(function(){
                    datedebut=$(this).find("input[name=datedebut]").val();
                    datefin=$(this).find("input[name=datefin]").val();
                    $.post("adddate.php",{datedebut:datedebut,datefin:datefin},function(data){
                        if(data!="Vous devez entrer une date !")
                        {
                            $('.liste').empty().append(data);
                            $('.error').empty();
                        }
                        else
                        {
                            $('.error').empty().append(data);
                        }
                    });
                    return false;
                });
            });
        </script>


Pour info :

- Dans pourcentage.php je calcule un pourcentage par rapport aux checkbox cochées. Quand je fais ça directement ça marche.
- Dans adddate.php, j'affiche les lignes de la table qui correspondent aux dates données. Cela marche.

Mais donc ce qui marche pas, c'est changer les dates puis faire le calcule.. la page se recharge et aucun calcul se fait.

Merci ! Smiley smile
J'ai l'impression que ça vient du fait que lorsque la personne indique deux dates, le fichier adddate.php renvoie un formulaire de la liste des sondage mais que jQuery ne gère pas ce nouveau formulaire. En effet, dans le "action" du formulaire dans adddate.php j'ai mis "#" et lorsque la personne entre les dates puis selectionne les sondages et fait envoyer, ça le renvoie sur la page # (c'est à dire la même).

Donc le jQuery ne gère plus du tout alors que pourtant j'ai bien mis un class=".form1" dans le formulaire de adddate.php...

Je me sens vraiment perdu, help Smiley ohwell

Et puis lorsque j'entre deux dates et fait envoyer, le code source de la page affiche les lignes des sondages qui ont été effacées...
Bonsoir,

Pas évidant de voir d’où vient le problème sans page de test.
As tu bien vérifié la console d'erreur ? Il y a peut être une erreur qui bloque le javascript ?