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 :

Renvoyer des valeurs par checkbox


Sujet :

JavaScript

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Octobre 2008
    Messages
    104
    Détails du profil
    Informations forums :
    Inscription : Octobre 2008
    Messages : 104
    Par défaut Renvoyer des valeurs par checkbox
    Bonjour,
    J'ai un checkbox : name="check1" id="id_check1"

    Code html : Sélectionner tout - Visualiser dans une fenêtre à part
    <input type="checkbox" name="check1" id="id_check1" />

    et j'ai aussi une zone de texte

    Code html : Sélectionner tout - Visualiser dans une fenêtre à part
    <input name="zone1" id="id_zone1" type="text" size="10" />

    Je veux ca :

    1) Envoyer la valeur 'c est vrai' sur id_zone1 quand mon chebox = true
    2) Envoyer la valeur 'c est faux' sur id_zone1 quand mon chebox = false

    J'ai essayé avec onclick="javascript:ma_fonction()" , ca retourne que 'c est vrai' mais le faite de faire onclick ne me permet plus dé-cliquer mon checkbox

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    function ma_fonction(){
    	if (document.getElementById('id_check1').checked=false)
    	{
    		document.getElementById('id_zone1').value='c est faux'
    	}
    	if (document.getElementById('id_check1').checked=true)
    	{
    		document.getElementById('id_zone1').value='c est vrai'
    	}
    }

  2. #2
    Expert confirmé
    Avatar de sekaijin
    Homme Profil pro
    Urbaniste
    Inscrit en
    Juillet 2004
    Messages
    4 205
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Urbaniste
    Secteur : Santé

    Informations forums :
    Inscription : Juillet 2004
    Messages : 4 205
    Par défaut
    je crois qu'il y a pas mal de méconnaissance de HTML
    dans tout ça.

    1) un formulaire HTTP ne renvoi au serveur QUE les checkBox sélectionné.

    2) la valeur de la checkbox n'a aucun sens c'est une indication pour dire si oui ou nom la boite est cochée

    3) c'est au serveur d'interpréter cette valeur. et non au client.

    4) on n'utilise JAMAIS "javascript:" ce truc à été introduit par quelque navigateurs pour supporter Javascript alors qu'il était balbutiant et non normalisé.

    Pour revenir à ton problème
    changer la valeur de la checkbox si elle est cochée ou non ne sert à rien vu que cette valeur ne sera envoyée que si elle est cochée.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <input type="checkbox" name="check1" value="XXXX" />
    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    if(null == $_POST['check1']) {
      $value='c est faux';
    } else {
      $value='c est vrais';
    }
    Tu peux remarquer q'on ne teste pas la valeur de check1 mais sa présence.

    enfin un peut de programmarion quelque soit le langage la structure de condition posède toujours la possibilité de mettre "sinon"
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    if (maCondition) {
      //ici maCondition est vrai
    } else {
      //ici maCondition est fausse
    }
    ça ne sert à rien de tester deux fois
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    if (maCondition) {
      //ici maCondition est vrai
    }
    if (! maCondition) {
      //ici maCondition est fausse
    }
    car une condition est soit vrai soit fausse.

    enfin on ne test jamais un booléen en le comparant à true ou false
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    var myVar = true;
    if (myVar) { // et non if (true == myVar)
    }
    //de même
    if (!myVar){ // et non if (false == myvar)
    }
    ton code s'écrirait s'il servait à quelque chose
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    function ma_fonction(checkBox) {
      if (checkBox.checked) { // si la checkBox est cochée
        document.getElementById('id_zone1').value='c est vrais'
      } else {
        document.getElementById('id_zone1').value='c est faut'
      }
    }
    Code html : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    <input type="checkbox" name="check1" onclick="ma_fonction(this)" />
    <input name="zone1" id="id_zone1" type="text" size="10" />

    A+JYT

  3. #3
    Membre confirmé
    Inscrit en
    Octobre 2008
    Messages
    104
    Détails du profil
    Informations forums :
    Inscription : Octobre 2008
    Messages : 104
    Par défaut
    Un grand merci. C'est bien compris. Résolu

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

Discussions similaires

  1. [checkbox] Récupération des valeurs de checkbox
    Par chng001 dans le forum Struts 1
    Réponses: 13
    Dernier message: 07/09/2009, 20h31
  2. Réponses: 2
    Dernier message: 26/10/2006, 17h52
  3. Réponses: 5
    Dernier message: 03/05/2006, 10h27
  4. Réponses: 1
    Dernier message: 10/04/2006, 09h53
  5. Récupérer des valeurs de checkbox dans MySQL
    Par digger dans le forum SQL Procédural
    Réponses: 1
    Dernier message: 05/09/2005, 14h58

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