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 :

Validation formulaire sans bouton submit


Sujet :

JavaScript

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Homme Profil pro
    Inscrit en
    Janvier 2010
    Messages
    402
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations forums :
    Inscription : Janvier 2010
    Messages : 402
    Par défaut Validation formulaire sans bouton submit
    Bonjour,

    J'ai un formulaire à liste déroulante (pour trier une liste de livres) :

    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
     
    <?php 
     
     
    <form action ="liste.php" method = "get">
    <p>
    <SELECT name="tri"class="tri_bandeau">
     
                    
                    
            <option value="titre"<?php if (isset($_GET['tri']) && $_GET['tri'] == "titre" ) {echo 'selected="selected"';} ?>>TITRE</option><!-- PERMET DE GARDER AFFICHAGE OPTION TRI -->
     
    	<option value="date_publication<?php if (isset($_GET['tri']) && $_GET['tri'] == "date_publication" ) {echo 'selected="selected"';} ?>">DATE PUBLICATION</option>
     
    	<option value="date_achat"<?php if (isset($_GET['tri']) && $_GET['tri'] == "date_achat" ) {echo 'selected="selected"';} ?>>DATE ACHAT</option>
     
    	<option value="date_lecture"<?php if (isset($_GET['tri']) && $_GET['tri'] == "date_lecture" ) {echo 'selected="selected"';} ?>>DATE_LECTURE</option>
     
     
    		<input type="radio" class="radio_tri_asc" name="senstri" value="ASC" id="ASC" checked="checked"  /> <label for="ASC" class="label_tri_asc">ASC</label>
    		<input type="radio" class="radio_tri_desc" name="senstri" value="DESC" id="DESC" <?php if (isset($_GET['senstri']) && $_GET['senstri'] == "DESC" ) {echo 'checked="checked"';} ?> /> <label for="DESC" class="label_tri_desc">DESC</label>
    		<label for="trier_par"class="trier_par">Trier les résultats par</label>
     
    </SELECT>
     
    	<input type="submit" value="Trier"/>
    <p/>
    <form/>
     
    ?>
    Ce formulaire fonctionne : après avoir cliqué sur le bouton submit, le tri se fait bien. Mais ce que je souhaiterais obtenir avec javascript, c'est la même chose mais sans avoir à cliquer sur un bouton submit. Le fait de sélectionner une option dans le formulaire devrait pouvoir déclencher directement le tri. Ne connaissant pas javascript, pouvez-vous m'aider à obtenir l'effet souhaité ? Merci.

  2. #2
    Membre Expert
    Avatar de RomainVALERI
    Homme Profil pro
    POOête
    Inscrit en
    Avril 2008
    Messages
    2 652
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : POOête

    Informations forums :
    Inscription : Avril 2008
    Messages : 2 652
    Par défaut
    Essaie ceci :
    Code html : Sélectionner tout - Visualiser dans une fenêtre à part
    <SELECT name="tri"class="tri_bandeau" onchange="this.form.submit();">

  3. #3
    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 : 54
    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
    Et au passage, tu devrais essayer d'être plus rigoureux avec la syntaxe :
    • Le nom des balises en majuscule n'est pas conforme xhtml et pas cohérent avec l'ensemble de ton code.
    • Il faut éviter les espaces entre un attribut, le signe = et la valeur de l'attribut.
    • A l'inverse, il faut en mettre un avant tout nouvel attribut.
    • Une balise fermante débute par le slash ("/"), donc <p/> et <form/>, c'est pas bon.


    Enfin, je rappelle que JavaScript est du code client, donc concerne le code HTML généré, merci donc de se conformer aux règles de ce forum et de poster le code HTML et non PHP
    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

  4. #4
    Membre éclairé
    Homme Profil pro
    Inscrit en
    Janvier 2010
    Messages
    402
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations forums :
    Inscription : Janvier 2010
    Messages : 402
    Par défaut
    Merci à Bovino pour ses conseils de syntaxe dont je vais tacher à l'avenir de tenir compte.
    Merci également à RomainVALERI car sa proposition répond à ma problématique En testant, je me suis rendu compte que je souhaitais avoir le même effet lorsque je change le bouton radio sélectionné :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    <input type="radio" name="senstri" value="ASC" id="ASC" checked="checked"/><label for="ASC">ASC</label>
    <input type="radio" name="senstri" value="DESC" id="DESC"/><label for="DESC">DESC</label>
    J'ai essayé d'insérer ce code après les " name="senstri" " :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    onchange="this.form.senstri();"
    Mais cela ne fonctionne pas. Pouvez-vous m'aider à nouveau ? Merci d'avance.

  5. #5
    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 : 54
    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
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    onchange="this.form.senstri();"
    senstri(), c'est quoi ?

    En tout cas, ce n'est pas une méthode native d'un objet de type formulaire...
    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

  6. #6
    Membre éclairé
    Homme Profil pro
    Inscrit en
    Janvier 2010
    Messages
    402
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations forums :
    Inscription : Janvier 2010
    Messages : 402
    Par défaut
    senstri est l'attribut name des boutons radio. Quant au (), j'ai transposé le code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    onchange="this.form.submit();"
    Mais comme je suis néophyte, je dois m'y prendre mal. Peux-tu m'apporter une aide supplémentaire ? Merci.

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

Discussions similaires

  1. Envoi formulaire sans bouton submit
    Par Manuxy dans le forum Général Conception Web
    Réponses: 3
    Dernier message: 04/02/2010, 09h11
  2. Validation d'un formulaire sans bouton submit
    Par jobo dans le forum Balisage (X)HTML et validation W3C
    Réponses: 5
    Dernier message: 21/01/2009, 20h40
  3. récuperer des données de formulaire sans bouton submit
    Par bachboucha dans le forum Langage
    Réponses: 1
    Dernier message: 29/10/2008, 15h13
  4. Listes déroulantes : valider la sélection sans bouton submit
    Par neimad31 dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 07/11/2007, 14h47
  5. liste,formulaire lecture sans bouton submit
    Par BernardT dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 02/06/2006, 07h43

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