Précédent   Forum des professionnels en informatique > Webmasters - Développement Web > JavaScript > Bibliothèques & Frameworks
Bibliothèques & Frameworks Forum d'entraide sur les frameworks et bibliothèques JavaScript (jQuery, Mootools, Prototype, Script.aculo.us, etc.). Avant de poster : Cours Frameworks JavaScript
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 10/09/2008, 16h17   #1
Nouveau Membre du Club
 
Inscription : mai 2004
Messages : 84
Détails du profil
Informations personnelles :
Âge : 29

Informations forums :
Inscription : mai 2004
Messages : 84
Points : 36
Points : 36
Par défaut Lancer une recherche multicritères

Bonjour,

Ca fait une semaine que je me suis mis à ExtJS.
Pourtant, je n'ai toujours pas compris comment submiter un formulaire de recherche.
En fait, je voudrais faire comme dans cette exemple http://php-ext.quimera-solutions.com...id=form/custom mais avec plusieurs textFields au lieu de l'extension.

Merci d'avance
lionheart33806 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 11/09/2008, 17h29   #2
Nouveau Membre du Club
 
Inscription : mai 2004
Messages : 84
Détails du profil
Informations personnelles :
Âge : 29

Informations forums :
Inscription : mai 2004
Messages : 84
Points : 36
Points : 36
Après avoir bien ramé tout seul , j'ai trouvé la solution !

Sur le bouton de recherche, il faut définir le handler du click.
Le but du handler dans un contexte de moteur multi-critères est de récupérer les valeurs du formulaire et de les refiler au DataStore qui charge les données.

dans mon cas, j'ai un truc du genre :
Code :
1
2
3
4
5
handler: function(){
                  parametres = monFormLayout.getForm().getValues();
                  parametres['start'] = 0;
                  grilleResultat.store.load({params: parametres});
        }
C'est donc tout con.

Je me suis bien pris la tête avec le start. C'est pour la PagingToolbar (si vous l'utiliser) sinon ça donne des NaN.
lionheart33806 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 17/09/2008, 10h34   #3
Nouveau Membre du Club
 
Inscription : mai 2004
Messages : 84
Détails du profil
Informations personnelles :
Âge : 29

Informations forums :
Inscription : mai 2004
Messages : 84
Points : 36
Points : 36
Finalement, j'ai trouvé mieux .
Plutôt, j'ai dû trouver mieux

Code :
1
2
3
4
5
6
handler: function(){
                 var o = {start: 0};
                 parametres = rechAvancd.getForm().getValues();
                 grilleResultat.store.baseParams = Ext.apply(grilleResultat.store.baseParams || {}, parametres);
                 grilleResultat.store.load({params:o});
        }
Le problème avec l'exemple de mon précédent post est que la PagingToolbar ne gardait pas les paramètres du formulaire.

En fait, il y a 2 types de paramètres dans un store : les baseParams (dans l'objet) et les params (en paramètre de [re]load).

J'ai compris qu'il faut utiliser comme suit
dans baseParams => les critères de recherche
dans params => les paramètres de "calage" (start, limit)

Donc pour mon cas, le bouton de recherche fixe le baseParams et la PagingToolbar va fixer la fenêtre de données en réutilisant le baseParams.

J'ai compris ça en regardant le code de Ext.app.SearchField

Voilà
lionheart33806 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 05h34.


 
 
 
 
Partenaires

Hébergement Web