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

Ext JS / Sencha Discussion :

Les données d'un combo en fonction d'un checkbox ne s'affichent pas


Sujet :

Ext JS / Sencha

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Novembre 2010
    Messages
    47
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : Madagascar

    Informations forums :
    Inscription : Novembre 2010
    Messages : 47
    Par défaut Les données d'un combo en fonction d'un checkbox ne s'affichent pas
    Bonjour à tous,
    Voici mon problème j'ai un combobox alimenté par une base de données. A chaque fois que je coche le checkbox, les données du combo doivent s'afficher en fonction de la clé entrée.
    Ma requête php retourne bien la liste des ref à afficher mais quand je regarde dans mon combo, la liste se déroule mais il n'y a pas de données.
    Plus précisément, quand je coche sur le checkbox, et que je clique sur le combo, une liste se déroule mais les données sont vides (comme si dans la base, les données sont "Null").
    Quand je décoche le checkbox, la liste ne peut pas se dérouler (là ça va).
    Est-ce un problème sur ma déclaration sur le combo?
    Merci d'avance!
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    var chk_remplace = new Ext.form.Checkbox({name:'chk_remplacee',id:'chk_remplacee',handler:remplacee});
    var cle_fld = new Ext.form.NumberField({width:50,name:'cle',id:'cle'});
    var store_remplacee = new Ext.data.XmlStore({record:'liste',fields:[{name:'ref',mapping:'ref'}]});
    var remplacee_combo = new Ext.form.ComboBox({width:100,id:'ref_remplacee',name:'_ref_remplacee',store: store_remplacee,mode:'local',selectOnFocus:true});
    fonction remplacee
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
    function remplacee()
    {
    	var id = Ext.getCmp('cle').getValue();
    	var valeur = Ext.getCmp('chk_remplacee').getValue();	
        if(valeur == true)
    	{
        Ext.Ajax.request({url:'remplacee.php?id='+id,success:function(xhr){
    	var resultat = xhr.responseXML;
    	store_remplacee.loadData(resultat);
    	},failure:function(){Ext.Msg.alert('status','Erreur');}});
    	}
    }
    php
    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
     
    <?php
    include("connexion.php");
    $req = "SELECT ref FROM table WHERE cle =:cle ORDER BY ref";
    $s = oci_parse($ora_conn,$req);
    oci_bind_by_name($s,":cle",$_GET['id']);
    oci_execute($s);
     
    header('Content-type:text/xml; charset:iso-8859-1');
    echo '<?xml version="1.0" encoding="iso-8859-1"?><root>';
    while($row=oci_fetch_array($s,OCI_NUM))
    {
    echo '<liste>';
    echo '<ref>'.$row[0].'</ref>';
    echo '</liste>';
    }
    echo '</root>';
    oci_free_statement($s);
    include("deconnexion.php");
    ?>

  2. #2
    Membre expérimenté Avatar de JulienFio
    Profil pro
    Inscrit en
    Novembre 2007
    Messages
    201
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Novembre 2007
    Messages : 201
    Par défaut
    Bonjour,

    Dans les paramètres de ta combo, essayes de rajouter ceci:
    Es-tu sûr que ton store contient les bonnes données ?

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Novembre 2010
    Messages
    47
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : Madagascar

    Informations forums :
    Inscription : Novembre 2010
    Messages : 47
    Par défaut Ok merci pour ton aide
    Merci ça marche avec mon code. Mon store contient les bons résultats.

    Au fait j'ai une autre question.
    Quand je décoche le checkbox après les résultats restent les mêmes.
    J'ai déjà éssayé
    mais sans resultat.
    Merci

  4. #4
    Membre averti
    Profil pro
    Inscrit en
    Novembre 2010
    Messages
    47
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : Madagascar

    Informations forums :
    Inscription : Novembre 2010
    Messages : 47
    Par défaut
    J'ai éssayé
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Ext.getCmp('nte_reference_remplacee').setValue();
    dans la fonction remplacee() en faisant un else. mais ça ne marche pas.

  5. #5
    Membre chevronné
    Profil pro
    Inscrit en
    Novembre 2010
    Messages
    207
    Détails du profil
    Informations personnelles :
    Localisation : France, Indre et Loire (Centre)

    Informations forums :
    Inscription : Novembre 2010
    Messages : 207
    Par défaut
    Ceci te convient ?

    Si valeur case cochée true
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    remplacee_combo.setDisabled(false);
    Si valeur case cochée false
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    remplacee_combo.setDisabled(true);

  6. #6
    Membre averti
    Profil pro
    Inscrit en
    Novembre 2010
    Messages
    47
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : Madagascar

    Informations forums :
    Inscription : Novembre 2010
    Messages : 47
    Par défaut Youpi ça marche
    Citation Envoyé par scourjean Voir le message
    Ceci te convient ?

    Si valeur case cochée true
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    remplacee_combo.setDisabled(false);
    Si valeur case cochée false
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    remplacee_combo.setDisabled(true);
    Merci ça marche.
    J'ai aussi ajouté
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    remplacee_combo.setValue();
    pour réinitialiser après mon combo si j'ai déjà coché sur le checkbox et que je le décoche après.
    Merci à vous 2

  7. #7
    Membre expérimenté Avatar de JulienFio
    Profil pro
    Inscrit en
    Novembre 2007
    Messages
    201
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Novembre 2007
    Messages : 201
    Par défaut
    Juste à titre d'info, tu dois pouvoir utiliser un
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    remplacee_combo.clearValue();
    au lieu de ton setValue(), cela a plus de sens

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

Discussions similaires

  1. [XL-2007] Comment changer les données d'une cellule en fonction de 2 autres cellules
    Par bchar dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 16/12/2013, 12h27
  2. Réponses: 2
    Dernier message: 11/01/2013, 09h01
  3. Réponses: 0
    Dernier message: 28/03/2011, 09h05
  4. Réponses: 4
    Dernier message: 04/12/2007, 18h55
  5. Réponses: 5
    Dernier message: 12/10/2007, 10h06

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