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 :

Affichage combobox depuis pop-up


Sujet :

Ext JS / Sencha

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre habitué
    Profil pro
    Inscrit en
    Octobre 2007
    Messages
    9
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2007
    Messages : 9
    Par défaut Affichage combobox depuis pop-up
    Bonjour,

    je vais essayer d'être la plus claire possible...

    Code en PHP-JS- AJAX : j'ai un formulaire d'écriture d'un message et par un clic sur un bouton j'ouvre une pop-up qui présente une classification hiérarchique dans laquelle je peut choisir des rubriques pour classer mon message. Je souhaite que les rubriques choisies aillent s'afficher dans la fenêtre principale sous forme d'un multiselect (Combobox 'Ext.ux.Andrie.Select'). Le problème est que les multiselect ne s'affichent pas et que j'ai le message d'erreur suivant : "ct is null" (ext-all-debug.js (line 25361)).

    J'ai un code qui fonctionne très bien quand je crée directement les combobox depuis la fenêtre principale (et non pas depuis la pop-up) :
    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
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    function multiSelect(select,options,add){
     
            Ext.QuickTips.init();
     
    	// turn on validation errors beside the field globally
    	Ext.form.Field.prototype.msgTarget = 'side';
     
            function replace(expr,a,b) {
                var i=0
                while (i!=-1) {
                    i=expr.indexOf(a,i);
                    if (i>=0) {
                        expr=expr.substring(0,i)+b+expr.substring(i+a.length);
                        i+=b.length;
                    }
                }
                return expr
            }
     
     
            var multiS, multiSvalue;
            var o=new Array();
     
            for (var j =0; j <options.length; j++){
                value=options[j].split("*");
                name=replace(value[0],"^"," ");
                o[j]=[value[1],name];
            }
     
            if (add==1) o[j]=[select,'Autre...'];
     
    	var ds = new Ext.data.SimpleStore({
    		fields:['value', 'name'],
    		data:o      
    	});
     
           	var config = {
                    store:ds,
    		valueField:'value',
    		displayField:'name',
    		triggerAction:'all',
    		mode:'local',
                    emptyText:'Tous'
                    };
     
            multiSvalue = new Ext.form.TextField({
                                fieldLabel:'Value',
                                readOnly:false
                              }),
     
    	multiS = new Ext.ux.Andrie.Select(Ext.applyIf({
                    fieldLabel:'',
    		multiSelect:true,
    		minLength:0,
                    history:true
    		}, config))
     
    	multiS.on('change', function(){get_value(this,multiSvalue,select);}, multiS);
     
    	multiS.render(select+'Select');
            multiSvalue.render(select+'Value');
    }
    Je pense qu'il faut que j'arrive à préciser qu'il faut créer les éléments dans l'opener mais je ne sais pas comment faire (je maitrise très mal la bibliothèse ext js...).
    Merci d'avance de votre aide !

  2. #2
    Membre confirmé
    Homme Profil pro
    Développeur Web
    Inscrit en
    Avril 2005
    Messages
    151
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Avril 2005
    Messages : 151
    Par défaut
    "ct is null" : ça veut dire que l'élément dans lequel tu veux afficher le composant n'existe pas.
    Quand tu fais multiS.render(idElement), il faut que tu t'assures qu'il y a bien une balise avec l'id idElement dans ton code HTML. A partir du moment où ça y est, y'a pas de raison que ça passe pas.

Discussions similaires

  1. affichage combobox multi données
    Par jeanjean0403 dans le forum VB 6 et antérieur
    Réponses: 2
    Dernier message: 25/08/2006, 15h47
  2. Réponses: 2
    Dernier message: 05/07/2006, 09h14
  3. Problème affichage ComboBox et barre déroulante!
    Par ghan77 dans le forum Composants VCL
    Réponses: 4
    Dernier message: 17/01/2006, 14h09
  4. Affichage ComboBox multi-colonnes
    Par dough29 dans le forum VB 6 et antérieur
    Réponses: 4
    Dernier message: 04/12/2005, 12h28
  5. Affichage impossible depuis PhpMyAdmin
    Par Amélie Ladoque dans le forum Outils
    Réponses: 1
    Dernier message: 23/09/2005, 14h45

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