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 :

garder les valeurs des champs après actualisation


Sujet :

JavaScript

  1. #1
    Membre du Club
    Homme Profil pro
    Ingénieur systèmes et réseaux
    Inscrit en
    Avril 2007
    Messages
    209
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur systèmes et réseaux

    Informations forums :
    Inscription : Avril 2007
    Messages : 209
    Points : 68
    Points
    68
    Par défaut garder les valeurs des champs après actualisation
    Bonjour,
    J'ai un formulaire avec des zones de textes,des listes déroulantes et un textarea,j'ai des champs obligatoires,et une fois on clique sur 'submit' il va à la page suivante,mais,si l'un des champs obligatoires n'a pas été fourni il affiche un message d'alert et il revient à la page principale.sauf qu'il initialise tous les champs à vide.
    je voudrai savoir comment garder les valeurs saisies en revenant à la page ou en actualisant merci

  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 640
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    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 640
    Points : 66 663
    Points
    66 663
    Billets dans le blog
    1
    Par défaut
    réattribues les sélections et contenus coté serveur ...

  3. #3
    Membre expérimenté Avatar de Willpower
    Homme Profil pro
    sans emploi
    Inscrit en
    Décembre 2010
    Messages
    1 009
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : sans emploi

    Informations forums :
    Inscription : Décembre 2010
    Messages : 1 009
    Points : 1 519
    Points
    1 519
    Par défaut
    3 solutions je dirais,

    1) celle proposé par space, de reutiliser les données reçues par le serveur.
    2) utiliser le cache du client (cookie ou localStorage)
    3) faire une prévérification javascript du formulaire et empêcher le submit s'il n'est pas correct.

  4. #4
    Nouveau membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2012
    Messages
    25
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2012
    Messages : 25
    Points : 34
    Points
    34
    Par défaut
    hello,

    tu peu te renseigner sur les dernières méthodes de stockage coté clients (interne au navigateur) : Web Storage, web SQL DataBases, IndexedDB, et application cache.

    dans ton cas le webStorage semble la solution la plus approprié.

    je t'invite à regarder l'exemple de ce slides:
    http://slides.html5rocks.com/#web-storage


    et voila un lien qui te dira quel navigateur supporte cette fonctionnalité.
    http://caniuse.com/namevalue-storage


    seul contrainte (a vérifier, car je sais que c'est le cas pour les indexedDB et l’application cache) il faudra que l'utilisateur clique sur le bouton comme quoi il accepte que t'enregistre des donnée sur sa machine.

  5. #5
    Membre averti
    Avatar de Darkyl
    Homme Profil pro
    autodidacte en recherche d'emploi
    Inscrit en
    Novembre 2004
    Messages
    440
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : autodidacte en recherche d'emploi

    Informations forums :
    Inscription : Novembre 2004
    Messages : 440
    Points : 352
    Points
    352
    Billets dans le blog
    1
    Par défaut
    Lu,

    ou alors si tu peux faire ton submit dans un div avec appel ajax,et c'est tout... . tu n'as rien d'autres à faire car ta page principale (celle de ton formulaire remplis) est toujours là, derrière ton div de traitement et si il y a des erreurs, tu ferme juste le div de traitement et te revoila sur la page du formulaire rempli...sinon tu redirige la page de ton formulaire...

    Aprés reste à prévoir la méthode de signalement des erreurs...

    Perso, c'est comme cela que je fais, aprés avoir testé toutes les méthodes proposées dont une de renvoi de variable par ?nom_var=valeur_var par url, et ça marche bien mais c'est relativement lourd à mettre en place par rapport à un div et ajax...

  6. #6
    Membre averti
    Avatar de Darkyl
    Homme Profil pro
    autodidacte en recherche d'emploi
    Inscrit en
    Novembre 2004
    Messages
    440
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : autodidacte en recherche d'emploi

    Informations forums :
    Inscription : Novembre 2004
    Messages : 440
    Points : 352
    Points
    352
    Billets dans le blog
    1
    Par défaut
    Heu,

    je répond à mon propre message tein ...

    Pour ma méthode en faite, je n'utilise plus de form. Je met mes inputs dont j'ai besoins, puis un button avec onclick. Quand tu clique sur le boutton, une fonction javascript vérifie les champs (par leurs id), montre les messages d'erreur si'il y en a (ou les affiche à côté des champs concernés, et s'il n'y a pas d'erreur ouvre la page de traitement php des infos avec les variables dans l'url. Cette page revérifie les donées en php côté serveur et fait ce qu'ilfaut faire avec.

    Maintenant, je me suis même fait des inputs spéciaux qui ne peuvent accepter certaines choses, puis je vérifie en direct (onchange sur input) que le champ tapé est bon. S'il est pas bon, tu met une variable à false, sinon à true . Si l'ensemble des variables sont à true, alors c'est bon, sinon, fais rien. L'erreur c'est déjà affiché au bon input lors du onchange sur celui-ci...
    Gain de temps de traitement sur click "ex submit".

    Ma méthode ne marche que s'il y a javascript autorisé sur le pc utilisateurs et le fait d'enlever la form le rend peut-être incompatible avec les vieux navigateurs (même si je ne pense pas).

    Sinon, comme je disais, tu peux renvoyer tes valeurs dans l'url en rappelant ta page de formulaire s'il y a des erreurs. Puis dans ta page, tu teste si des variables on étaient envoyé par l'url. Si c'est le cas, tu les affiches dans les bon input avec le message d'erreur qui va bien (tu as aussi envoyé le type d'erreur par l'url), sinon, s'il n'y a pas de variable dans l'url, c'est que c'est la première fois que tu ouvre le formulaire. Donc tout à vide (if isset(...))

    c'est la méthode d'école mais tu te rend vite compte que si tu as un gros formulaire, cela va te faire une url de fou....

    Moi, je préfère le full javascript pour traiter tout cela avant d'ouvrir la page action_formulaire.php...

  7. #7
    Membre du Club
    Homme Profil pro
    Ingénieur systèmes et réseaux
    Inscrit en
    Avril 2007
    Messages
    209
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur systèmes et réseaux

    Informations forums :
    Inscription : Avril 2007
    Messages : 209
    Points : 68
    Points
    68
    Par défaut
    Merci à tous,je vais essayer vos méthodes et voir laquelle est la plus adéquate

  8. #8
    Membre du Club
    Homme Profil pro
    Ingénieur systèmes et réseaux
    Inscrit en
    Avril 2007
    Messages
    209
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur systèmes et réseaux

    Informations forums :
    Inscription : Avril 2007
    Messages : 209
    Points : 68
    Points
    68
    Par défaut
    Re-salut,
    Je voulais savoir si c'est possible d'attribuer une fonction à l'évenement 'onclick' d'un bouton de type 'submit'.merci

  9. #9
    Nouveau membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2012
    Messages
    25
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2012
    Messages : 25
    Points : 34
    Points
    34
    Par défaut
    re,

    oui c'est possible
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    onClick="taFonctionJavascript('param');"

  10. #10
    Membre du Club
    Homme Profil pro
    Ingénieur systèmes et réseaux
    Inscrit en
    Avril 2007
    Messages
    209
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur systèmes et réseaux

    Informations forums :
    Inscription : Avril 2007
    Messages : 209
    Points : 68
    Points
    68
    Par défaut
    OK c'était juste pour savoir est-ce que la fonction sera exécutée avant la validation du form?

  11. #11
    Expert éminent sénior

    Avatar de vermine
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    6 582
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : Belgique

    Informations forums :
    Inscription : Mars 2008
    Messages : 6 582
    Points : 79 912
    Points
    79 912
    Par défaut
    Bonjour,

    La fonction sera exécutée avant l'envoi du formulaire. Cependant, faites attention que si vous ne retournez pas false dans le onclick, le formulaire sera envoyé :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    onClick="return taFonctionJavascript('param');"

  12. #12
    Membre du Club
    Homme Profil pro
    Ingénieur systèmes et réseaux
    Inscrit en
    Avril 2007
    Messages
    209
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur systèmes et réseaux

    Informations forums :
    Inscription : Avril 2007
    Messages : 209
    Points : 68
    Points
    68
    Par défaut
    Ok c'est bon ,ma fonction marche bien et ,ainsi, mon problème est résolu.merci à tout le monde

  13. #13
    Nouveau membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2012
    Messages
    25
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2012
    Messages : 25
    Points : 34
    Points
    34
    Par défaut
    juste par curiosité, tu as choisit quel solution pour ton premier problème?

    en plus sa peu aidé ceux qui cherche a faire la même chose.

  14. #14
    Membre du Club
    Homme Profil pro
    Ingénieur systèmes et réseaux
    Inscrit en
    Avril 2007
    Messages
    209
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur systèmes et réseaux

    Informations forums :
    Inscription : Avril 2007
    Messages : 209
    Points : 68
    Points
    68
    Par défaut
    salut Piflo,
    J'ai choisit la troisième solution proposée par Willpower qui est: faire une prévérification javascript du formulaire et empêcher le submit s'il n'est pas correct.
    j'ai trouvé qu'elle est plus facile est plus performante voilà

  15. #15
    Nouveau membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2012
    Messages
    25
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2012
    Messages : 25
    Points : 34
    Points
    34
    Par défaut
    ok ok, je trouve cela aussi la meilleur vu qu'elle t'évite l'actualisation de ta page.

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

Discussions similaires

  1. [MySQL] Conserver les valeurs des champs après POST
    Par moudjahidine dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 01/05/2013, 14h56
  2. [AJAX] Garder les valeurs des champ d'un formulaire en mémoire
    Par joss91 dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 30/04/2008, 09h56
  3. [XSLT] Récupérer les valeur des champs
    Par webspeak dans le forum XSL/XSLT/XPATH
    Réponses: 1
    Dernier message: 02/11/2006, 17h17
  4. garder les valeurs de champs de type input
    Par 18Marie dans le forum Balisage (X)HTML et validation W3C
    Réponses: 10
    Dernier message: 04/08/2006, 00h42
  5. Récupérer les valeurs des champs créés dynamiquement
    Par outlawz dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 03/05/2006, 16h32

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