Précédent   Forum des professionnels en informatique > Webmasters - Développement Web > JavaScript > Bibliothèques & Frameworks > Dojo
Dojo Forum d'entraide sur le framework Dojo
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 19/09/2007, 15h19   #1
Futur Membre du Club
 
Inscription : octobre 2006
Messages : 93
Détails du profil
Informations forums :
Inscription : octobre 2006
Messages : 93
Points : 16
Points : 16
Par défaut combobox : Modifier le nombre de valeurs retournées

Bonjour à tous.

Voila, j'ai une classe om_combobox.js qui hérite de combobox.js, classe propre à dojo, donc... non modifiable.


Et le problème que j'ai, c'est que j'aimerais modifier une valeur définie dans cette classe, en l'occurence la valeur en gras ci dessous :

Code :
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
dojo.declare(
    "dojo.widget.basicComboBoxDataProvider",
    null,
    function(/*Object*/ options, /*DomNode*/ node){
        [...]
        // Maximum number of results to return.
        // TODO: need to read this value from the widget parameters
        this.searchLimit = 30;

        [...]

        if(!dj_undef("dataUrl", options) && !dojo.string.isBlank(options.dataUrl)){
            this._getData(options.dataUrl);
        }else{
            // check to see if we can populate the list from <option> elements
            if((node)&&(node.nodeName.toLowerCase() == "select")){
                // NOTE: we're not handling <optgroup> here yet
                var opts = node.getElementsByTagName("option");
                var ol = opts.length;
                var data = [];
                for(var x=0; x<ol; x++){
                    var text = opts[x].textContent || opts[x].innerText || opts[x].innerHTML;
                    var keyValArr = [String(text), String(opts[x].value)];
                    data.push(keyValArr);
                    if(opts[x].selected){
                        options.setAllValues(keyValArr[0], keyValArr[1]);
                    }
                }
                this.setData(data);
            }
        }
    },
[...]    
);
Sachant que je ne m'y connais pas énorme en dojo, voici mes questions :
- y'a t-il un moyen de modifier cette valeur ?
- est ce que on n'a vraiment pas le droit de directement modifier une valeur dans le code de base dojo ?


Je vous remercie d'avance

Edit : précision, je travaille sur la version 0.4.1 de dojo .
burhud est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 19/09/2007, 15h38   #2
Futur Membre du Club
 
Inscription : octobre 2006
Messages : 93
Détails du profil
Informations forums :
Inscription : octobre 2006
Messages : 93
Points : 16
Points : 16
C'est bon j'ai trouvé !!

Pour ceux que ca interesserait :

dans la méthode postCreate de la classe héritante, rajouter la ligne suivante :

Code :
1
2
 
this.dataProvider.searchLimit=xx;
xx étant bien sur le nombre de valeurs à mettre dans la combo


Edit : y a t il moyen de modifier le sujet du topic, pour qu'il soit plus explicite ?
burhud est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 15h02.


 
 
 
 
Partenaires

Hébergement Web