begin process at 2012 05 29 08:37:15
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Javascript / DHTML / Ajax

 > 

JavaScript Orienté objet (POO)

 > 

Evènements

 > 

Formulaire et options - Ça fonctionne pas..


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Formulaire et options - Ça fonctionne pas..

vendredi 27 juin 2008 à 23:31:40 | Formulaire et options - Ça fonctionne pas..

isarennt

Bonjour! J'ai un problème de code... lorsque je créé dynamiquement des options, je n'arrive pas à mettre un message d'erreur (soit une image, dans le span avec innerhtml) lorsqu'aucun des États ou des Provinces n'est choisi. Et lorsque je valide avec mes return sur mon bouton submit, la province choisi s'efface alors que le formulaire est en false (le reste n'était pas valide)... Je pioche là-dessus depuis 4 jours et j'y arrive juste pas... est-ce que quelqu'un peut m'aider ? Merci !!!! HTML : Javascript: function validationPays() { var Pays = document.formulaire.Pays.selectedIndex; var valPays = document.getElementById("validationPays"); var valPEP = document.getElementById("valProv"); var ProvEtat = document.formulaire.provetat.options; var vide = new Array(); var canada = new Array(); var usa = new Array(); vide[0] = new Option("Faites votre choix"); canada[0] = new Option("Faites votre choix"); canada[1] = new Option("Alberta", "AB"); canada[2] = new Option("Colombie-Britannique", "BC"); canada[3] = new Option("Île-du-Prince-Édouard", "PE"); canada[4] = new Option("Manitoba", "MB"); canada[5] = new Option("Nouveau-Brunswick", "NB"); canada[6] = new Option("Nouvelle-Écosse", "NS"); canada[7] = new Option("Ontario", "ON"); canada[8] = new Option("Québec", "QC"); canada[9] = new Option("Saskatchewan", "SK"); canada[10] = new Option("Terre-Neuve-et-Labrador", "NL"); usa[0] = new Option("Faites votre choix"); usa[1] = new Option("New York", "NY"); usa[2] = new Option("Maine", "ME"); usa[3] = new Option("New Hampshire", "NH"); usa[4] = new Option("Vermont", "VT"); for (i = 0; i < document.formulaire.provetat.options.length; i++) { document.formulaire.provetat.options.length = 0; } if(Pays == 2) { for (i = 0; i < usa.length; i++) { ProvEtat[i] = usa[i]; } valPays.innerHTML = ''; return true; } else if(Pays == 1) { for (i = 0; i < canada.length; i++) { ProvEtat[i] = canada[i]; } valPays.innerHTML = ''; return true; } else { for (i = 0; i < vide.length; i++) { ProvEtat[i] = vide[i]; } valPays.innerHTML = ''; return false; } }
vendredi 27 juin 2008 à 23:34:06 | Re : Formulaire et options - Ça fonctionne pas..

isarennt

oops.. comment envoyer un code.. retest... Javascript: function validationPays() { var Pays = document.formulaire.Pays.selectedIndex; var valPays = document.getElementById("validationPays"); var valPEP = document.getElementById("valProv"); var ProvEtat = document.formulaire.provetat.options; var vide = new Array(); var canada = new Array(); var usa = new Array(); vide[0] = new Option("Faites votre choix"); canada[0] = new Option("Faites votre choix"); canada[1] = new Option("Alberta", "AB"); canada[2] = new Option("Colombie-Britannique", "BC"); canada[3] = new Option("Île-du-Prince-Édouard", "PE"); canada[4] = new Option("Manitoba", "MB"); canada[5] = new Option("Nouveau-Brunswick", "NB"); canada[6] = new Option("Nouvelle-Écosse", "NS"); canada[7] = new Option("Ontario", "ON"); canada[8] = new Option("Québec", "QC"); canada[9] = new Option("Saskatchewan", "SK"); canada[10] = new Option("Terre-Neuve-et-Labrador", "NL"); usa[0] = new Option("Faites votre choix"); usa[1] = new Option("New York", "NY"); usa[2] = new Option("Maine", "ME"); usa[3] = new Option("New Hampshire", "NH"); usa[4] = new Option("Vermont", "VT"); for (i = 0; i < document.formulaire.provetat.options.length; i++) { document.formulaire.provetat.options.length = 0; } if(Pays == 2) { for (i = 0; i < usa.length; i++) { ProvEtat[i] = usa[i]; } valPays.innerHTML = ''; return true; } else if(Pays == 1) { for (i = 0; i < canada.length; i++) { ProvEtat[i] = canada[i]; } valPays.innerHTML = ''; return true; } else { for (i = 0; i < vide.length; i++) { ProvEtat[i] = vide[i]; } valPays.innerHTML = ''; return false; } }
vendredi 27 juin 2008 à 23:34:44 | Re : Formulaire et options - Ça fonctionne pas..

isarennt

bon je suis vraiment newbie..
samedi 28 juin 2008 à 06:21:36 | Re : Formulaire et options - Ça fonctionne pas..

bultez

Membre Club


Bonjour,

affiche ta source dans un  éditeur de texte quelconque
et fait un copié/collé.
pas depuis le logciel que tu utilises.

ou alors clique d'abord sur Si vous n'arrivez pas à saisir votre message, CLIQUEZ ICI pour revenir à une "TextBox classique"

et ne laisse pas brut le texte copié, met le un ch'tit poil en forme

que ce soit lisible.


                Cordialement            Bul         [mon Site]     [M'écrire]
samedi 28 juin 2008 à 09:40:18 | Re : Formulaire et options - Ça fonctionne pas..

bultez

Membre Club
mais si j'ai compris ton souci, c'est 2 select liés ?
le choix dans le 1er select entraîne des options différentes dans le 2ème.
si c'est ça : ch'tiot exemple ici ( javascript, php, et/ou ajax )

                Cordialement            Bul         [mon Site]     [M'écrire]
samedi 28 juin 2008 à 16:23:50 | Re : Formulaire et options - Ça fonctionne pas..

isarennt

Merci vraiment beaucoup pour ta réponse! Maintenant, tout est fonctionnel sauf un seul truc : lors du submit (qui vérifie que toutes mes functions sont valides) si j'avais sélectionné une province ou un état, il remet l'option au premier (soit Faites votre choix) et donne un message d'erreur. Comment faire en sorte qu'il garde en mémoire l'option sélectionnée?

Je met juste le javascript, je pense pas que le HTML soit important.

Sauf pour dire que mon select pays s'appelle Pays (sur lequel roule "validationPays()") et celui pour les État ou Provinces s'appelle provetat (sur lequel roule onchange="validationPE()")

J'essaie la technique du copier/coller à partir d'un document texte. Voyons voir...


function validationPays()
{   
    var Pays = document.formulaire.Pays.selectedIndex;
    var valPays = document.getElementById("validationPays");
   
    var vide = new Array();
    var canada = new Array();
    var usa = new Array();
   
    vide[0] = new Option("Faites votre choix");
   
    canada[0] = new Option("Faites votre choix");
    canada[1] = new Option("Alberta", "AB");
    canada[2] = new Option("Colombie-Britannique", "BC");
    canada[3] = new Option("Île-du-Prince-Édouard", "PE");   
    canada[4] = new Option("Manitoba", "MB");
    canada[5] = new Option("Nouveau-Brunswick", "NB");
    canada[6] = new Option("Nouvelle-Écosse", "NS");
    canada[7] = new Option("Ontario", "ON");
    canada[8] = new Option("Québec", "QC");
    canada[9] = new Option("Saskatchewan", "SK");
    canada[10] = new Option("Terre-Neuve-et-Labrador", "NL");

    usa[0] = new Option("Faites votre choix");      
    usa[1] = new Option("New York", "NY");
    usa[2] = new Option("Maine", "ME");
    usa[3] = new Option("New Hampshire", "NH");
    usa[4] = new Option("Vermont", "VT");

    for (i = 0; i < document.formulaire.provetat.options.length; i++)
    {
        document.formulaire.provetat.options.length = 0;
    }

    if(Pays == 2)
    {
        for (i = 0; i < usa.length; i++)
        {
            document.formulaire.provetat.options[i] = usa[i];
        }
       
        valPays.innerHTML = '';
        return true;
    }
    else if(Pays == 1)
    {
        for (i = 0; i < canada.length; i++)
        {
            document.formulaire.provetat.options[i] = canada[i];
        }
        valPays.innerHTML = '';
        return true;
    }
    else
    {
        for (i = 0; i < vide.length; i++)
        {
            document.formulaire.provetat.options[i] = vide[i];
        }
        valPays.innerHTML = '<img src="erreur.jpg">';
        return false;
    }
}

function validationPE()
{
     var pays = document.formulaire.Pays.selectedIndex;
    var provetat = document.formulaire.provetat.selectedIndex;
    var valProv = document.getElementById("valProv");
   
    if(pays == 0)
    {
        valProv.innerHTML = '';
        return true;
    }
   
    else
    {
        if(provetat == 0)
        {
            valProv.innerHTML = '<img src="erreur.jpg">';
            return false;
        }
        else
        {
            valProv.innerHTML = '';
            return true;
        }
    }   
}
samedi 28 juin 2008 à 16:37:53 | Re : Formulaire et options - Ça fonctionne pas..

bultez

Membre Club
quand tu valides le formulaire, c'est pour appeler un php je suppose
quand tu renvoie la réponse avec celui-ci, met l'option selected
( tu sais laquelle puisque $-POST ou $_GET ['name_select']  est là )

                Cordialement            Bul         [mon Site]     [M'écrire]
samedi 28 juin 2008 à 16:40:39 | Re : Formulaire et options - Ça fonctionne pas..

isarennt

euh non.. je suis vraiment débutante et je suis pas rendue au PHP... je valide les return true / false de toutes mes fonctions..
samedi 28 juin 2008 à 19:24:50 | Re : Formulaire et options - Ça fonctionne pas..

isarennt

Problème résolu !


J'ai créé cette fonction qui est celle qui valide le pays sélectionné (dans le submit) plutôt que celle qui remplit le deuxième option. Ainsi, province/etat reste sélectionné.

function validationPaysSelected()
{
     var pays = document.formulaire.Pays.selectedIndex;
    var valPays = document.getElementById("validationPays");
   
    if(pays > 0)
    {
        valPays.innerHTML = '';
        return true;
    }
       
    else
    {
        valPays.innerHTML = '<img src="erreur.jpg">';       
        return false;
    }   
}


Merci quand même pour ton temps, bultez!!!


Cette discussion est classée dans : formulaire, var, option, canada, usa


Répondre à ce message

Sujets en rapport avec ce message

récupérer les valeur d'un formulaire [ par raistlyn666 ] bonjour a tous,j'aimerais réaliser un QCM. pour ce qui est de la mise en page html ca va, mais pour le javascript, g un peu plus de mal.voici mon scri un formulaire avec option radio à recupere [ par azita ] comment faut il faire pour mettre une option radio à recupere dans un formulaire. merci d'avance Fomulaire Dynamique JavaScript [ par umaga ] Bonjour à tous,Une petite question de néophyte en Javascript. Je cherche à réaliser un formulaire dynamique. Disons que une partie de mon formulaire e ptit prob sur un traitement de formulaire [ par destiny ] lo all :)bon j'ai un formulaire classique avec une verif js (verif simple)Si sa passe, je pars sur la page inscript en php, ici je verifie d'autres ch formulaire dynamique [ par refkaben ] Bonjour et meilleurs voeux pour tout monde. Je veux faire un formulaire dont les champs s'ajoute en cliquant sur un bouton.J'ai créé une fonction en j probleme de liste deroulante dynamique [ par druglord ] bonjour, j'ai un probleme de liste déroulante. Ma premiere liste, qui est en dur, permet d afficher la deuxieme liste selon les lignes sélectionnées. pb de menu [ par kanabinch ] Voici le code pour faire défiler un menu vertical, mon problème est qu'il ne se déroule pas sur la droite mais sur le menu.   "<a href="http://www.w3. Aide envoi formulaire asynchrone [ par shadow1779 ] Bonsoir,je souhaite envoyer un formulaire via xmlhttprequest afin de vérifier par une page php si certains champs n'existent pas deja dans la base de sujet formulaire [ par limaseb ] J'ai un probleme sur mon formulaire aimerais le faire apparaitre en email outlook mais en colonne et non en ligne avec entre les informations & ces po Menu déroulant [ par Looping2605 ] Bonsoir,j'ai un petit problème avec mon site web.Alors j'ai une page avec un formulaire, et dans ce formulaire 2 menu déroulant.J'aimerais, lorsque le


Nos sponsors


Sondage...

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,484 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales