mercredi 08 septembre 2010

Tutoriel : Mon premier widget Dojo

Création d'un composant graphique Dojo pour interfacer l'accès à plusieurs moteurs de recherche (Compatible Dojo 1.2.3)


11. Valeur par défaut


Mettre une valeur par défaut dans le champ de recherche à l'initialisation du widget.



searchWidget.html
32
33
3435
var _search = new exemple1.widget.Search({
      id:"search",
      text:"saisir votre texte ici..."    }, dojo.byId("search"));
ligne 34 : passage d'un argument type chaîne de caractères au widget

Search.js
40
41
42
43
4445
464748
  /* Function: startup
    Methode publique appelee apres l'instanciation du widget et 
    la creation de tous ses noeuds DOM dans document.body */
  startup: function(){
    console.log("exemple1.widget.Search::startup");    this.inherited("startup",arguments);
    this.searchField.value=(this.text==null||this.text=="")?                            this._nls.locale.text:this.text;  }
lignes 46 : si aucune valeur n'a été passée en argument lors de l'instanciation du champ de saisie 47 : on affiche la valeur définie dans le fichier de wording sinon on affiche la valeur passée en argument Search.js
63
64
65
66
676869
70
71
7273
74
75
76
7778
7980
81
8283
84
85
86
  /* Function: _clear
    Methode privee permettant d'effacer le texte du champ de saisie */
  _clear: function() {
    console.log("exemple1.widget.Search::_clear");
    if( this.searchField.value==this._nls.locale.text ||        this.searchField.value==this.text ) {        this.searchField.value="";
    }
  },
      /* Function: _search
    Methode privee executant la recherche */
  _search: function() {
    console.log("exemple1.widget.Search::_search");
            if(  this.searchField.value!=this._nls.locale.text &&
         this.searchField.value!=this.text &&          this.searchField.value != "") {
         console.info("lancer la recherche sur : ", this.searchField.value);
    }    else {
      console.info("vous devez saisir une chaine de caracteres..."); 
    }
  }