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 :

Comment recuperer la valeur d'un champs d'un formulaire ?


Sujet :

JavaScript

  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Février 2005
    Messages
    39
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 39
    Points : 29
    Points
    29
    Par défaut Comment recuperer la valeur d'un champs d'un formulaire ?
    Bonjour tout le monde,
    voila j'ai un petit probleme avec un formulaire ..
    J'aimerais à partir d'un lien pouvoir attribuer une valeur à un champ caché puis envoyer le formulaire avec cette nouvelle valeur ... J'ai donc fait appel a 2 fct qui sont supprimer() et sendForm() : supprimer() assigne la valeur puis retourne true pour envoyer le formulaire .. Le probleme est que la valeur recuperée sur la page cible est celle d'origine (soit : "aucune") alors que si je met un alert() dans la fct supprimer la valeur est bien assignée ...
    enfin voila j'espere que vous avez compris mon probleme ..

    Voici mon code :

    Le code html du formulaire :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    <form action="messagerie.php" method="post" name="sauvegarder_supprimer_message" id="sauvegarder_supprimer_message">
     
    <input name="form_action" type="hidden" value="aucune">
     
    <a href="javascript:sendForm();" onclick="return supprimer();">Supprimer</a>
     
    </form>
    Les fonctions js appelées :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    function supprimer(){	
    document.forms["sauvegarder_supprimer_message"].form_action.value = 'supprimer';
    return true;
    }
     
    function sendForm() {
    var frm;
    frm = document.getElementById('sauvegarder_supprimer_message');
    frm.submit();
    }

  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
    il existe un petit évènement magique associé aux forms : onsubmit ...

    et passe plutot par un inout de type submit sasn avoir à bidouille un href avec un sublit dynamique ...

  3. #3
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Février 2005
    Messages
    39
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 39
    Points : 29
    Points
    29
    Par défaut
    Si j'ai bien compris ce que tu me dis tu me conseillerais d'utiliser des boutons de type submit c'est bien ca ?
    Le probleme est que je ne peux pas faire ca .. je prefererais utiliser des liens normaux car l'utilisateur doit pouvoir supprimer ou sauvegarder les messages qui sont selectionnés dans le formulaire .. il y a donc deux actions possibles selon le lien cliqué pour un meme formulaire ..
    Ensuite pour l'action onSubmit je ne vois pas trop l'interet car il faut toujours que je determine l'action choisie selon le lien cliqué ..

  4. #4
    Modérateur
    Avatar de Bisûnûrs
    Profil pro
    Développeur Web
    Inscrit en
    Janvier 2004
    Messages
    9 868
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Janvier 2004
    Messages : 9 868
    Points : 16 258
    Points
    16 258
    Par défaut
    @kvndevils : Eh bien fais deux boutons de type button qui appellent deux fonctions différentes dans lesquelles tu mets ton monformulaire.submit();

  5. #5
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Février 2005
    Messages
    39
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 39
    Points : 29
    Points
    29
    Par défaut
    Mais cela ne reviendrait il pas a la meme chose ?
    Les fonctions appelées par les liens marchent correctement seul la valeur du champs a la sortie de ces fct ne semble pas etre conservée ..
    De plus, le choix des liens repond a un besoin esthetique que je souhaite garder ..
    voili voiloo

    Pensez vous que le fait de mettre une valeur en dur ds le code de l'input peut etre prioritaire et ainsi ecrasé la nouvelle valeur lors de l'envoi ?

    merci de votre aide en tout cas

  6. #6
    Membre averti Avatar de Tdeny
    Profil pro
    Inscrit en
    Juin 2004
    Messages
    287
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2004
    Messages : 287
    Points : 311
    Points
    311
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    frm = document.getElementById('sauvegarder_supprimer_message');
    Comment tu peux mettre ça alors que c'est un name, pas une id... ?

  7. #7
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Février 2005
    Messages
    39
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 39
    Points : 29
    Points
    29
    Par défaut
    il est a la fois en id et en name regarde ..

  8. #8
    Membre averti Avatar de Tdeny
    Profil pro
    Inscrit en
    Juin 2004
    Messages
    287
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2004
    Messages : 287
    Points : 311
    Points
    311
    Par défaut
    Désolé, il y a trop longtemps que je fais ça et je ne me mets pas à jour. Ce sont des choses que je ne fais pas.
    En tout cas, dans les forms et leurs éléments, il y a la numérotation, qui démarre à 0, comme pour tout.
    Donc pour attribuer la valeur 'supprimer' au 1er élément de ton 1er formulaire :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    document.forms[0].elements[0].value="supprimer";
    document.forms[0].submit();
    Que tu peux mettre en fonction, envoyée sur
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <a href="#" onclick="sendForm();return false">Supprimer</a>
    par exemple...

Discussions similaires

  1. [debutant]Comment recuperer la valeur d'un champ de texte?
    Par thenightmare1985 dans le forum Forms
    Réponses: 4
    Dernier message: 07/01/2008, 17h17
  2. Réponses: 1
    Dernier message: 13/10/2007, 21h03
  3. Réponses: 2
    Dernier message: 29/05/2006, 14h02
  4. Réponses: 5
    Dernier message: 17/06/2005, 16h17
  5. comment recuperer deux valeurs de deux champs input
    Par trialrofr dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 01/02/2005, 22h08

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