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 :

Javascript saisie dans un formulaire et controle


Sujet :

JavaScript

  1. #1
    Membre du Club
    Inscrit en
    Mars 2006
    Messages
    88
    Détails du profil
    Informations forums :
    Inscription : Mars 2006
    Messages : 88
    Points : 62
    Points
    62
    Par défaut Javascript saisie dans un formulaire et controle
    Bonjour,

    En fait j'ai un script javascript qui me permet de faire le total d'une ligne en gros, quand l'utilisateur change le select avec onChange (autrement dit, pour que ce script se declenche il faut que l'utilisateur touche a la pge web).

    Ensuite j'ai un lien qui permet de passer de semaines en semaines (de pages en pages, car une page represente une semaine) et la j'ai un script javascript qui lance juste une alert en disant que s'ils n'ont pas sauvegardé, toute donnée sera perdu.

    Mais c'est peu pratique, car des qu'on clique sur le lien le script 2 se lance, donc meme quand on a pas touché a une donnée de la page, le message nous avertit alors qu'on a modifié aucune donnée.

    En fait je voudrais qu'il me le dise juste si l'utilisateur a touché des trucs dans la page et qu'il clique sur ce lien donc.

    Est ce possible ? Sachant que j'ai les 2 scripts comment pourrais je les "fusionner" ?

  2. #2
    Membre du Club
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    40
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Mai 2005
    Messages : 40
    Points : 48
    Points
    48
    Par défaut Modification
    Bonjour,
    pour ce problème je tenterais de mettre un champ en hidden avec en valeur 0, et dans chaque champ de saisie sur le onchange je viendrais le mettre à 1.
    Ainsi, au lieu de déclencher le message "voulez vous enregistrer ?" à chaque fois, il suffit de le conditionner à la valeur de ce champ.
    @+

  3. #3
    Membre expérimenté
    Avatar de ryan
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juin 2003
    Messages
    956
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Juin 2003
    Messages : 956
    Points : 1 316
    Points
    1 316
    Billets dans le blog
    1
    Par défaut
    Yop!

    Tu pourrais faire l'économie du champ en utilisant une variable "globale"
    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
     
    <script type="text/javascript">
    var tout_vide = "oui";
     
    function y_a_du_changement()
    {
      tout_vide = "non";
      ...
      ...
    }
     
    function faut_sauvegarder()
    {
      if (tout_vide == "non") alert("hé mec, tu vas tout perdre");
    }
    </script>
    Un ascenseur est une machine qui passe quand même la moitié de son temps à descendre.

  4. #4
    Membre du Club
    Inscrit en
    Mars 2006
    Messages
    88
    Détails du profil
    Informations forums :
    Inscription : Mars 2006
    Messages : 88
    Points : 62
    Points
    62
    Par défaut
    Oui merci Ryan.
    Juste un dernier truc.
    En fait, il retourn tout le temps true, j'ai l'impression...

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     function savecontrole()
    {
      if (tout_vide == "non")
    {
    if (window.confirm("If you continue none data will be saved, Continue ?"))
    {return true;} else {return false;};
    }
    }
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     echo "<h3><center><a href='index.php?lid=1&week=".$previousweek."&day=".$daylastweek."'title='Go to last week'
     onclick='savecontrole();'><--
    </a>WEEK #".$week."<a href='index.php?lid=1&week=".$nextweek."&day=".$daynextweek."'title='Go to next week'
     onclick='savecontrole();'>--></a></center></h3>";

  5. #5
    Membre du Club
    Inscrit en
    Mars 2006
    Messages
    88
    Détails du profil
    Informations forums :
    Inscription : Mars 2006
    Messages : 88
    Points : 62
    Points
    62
    Par défaut
    Probleme resolu en cherchant plus profondement sur le forum.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     function savecontrole()
    {
      if (tout_vide == "non")
    {
      if(confirm("If you continue none data will be saved, Continue ?"))
        return true;
      else
     return false;
    }
    }
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     echo "<h3><center><a href='index.php?lid=1&week=".$previousweek."&day=".$daylastweek."'title='Go to last week'
     onclick='javascript: return savecontrole();'><--
    </a>WEEK #".$week."<a href='index.php?lid=1&week=".$nextweek."&day=".$daynextweek."'title='Go to next week'
     onclick='javascript: return savecontrole();'>--></a></center></h3>";

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

Discussions similaires

  1. Controler les erreurs de saisie dans un formulaire
    Par javalhoussain dans le forum ASP.NET
    Réponses: 1
    Dernier message: 09/04/2011, 10h34
  2. controle de saisie dans un formulaire
    Par pat06 dans le forum Balisage (X)HTML et validation W3C
    Réponses: 3
    Dernier message: 09/12/2007, 17h11
  3. controle d une saisie dans un formulaire
    Par jpaulandre dans le forum Langage
    Réponses: 1
    Dernier message: 17/07/2007, 11h08
  4. Contrôle sur données saisies dans un formulaire
    Par omega dans le forum Langage
    Réponses: 2
    Dernier message: 17/08/2006, 16h55
  5. Réponses: 2
    Dernier message: 11/12/2004, 21h20

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