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

JSF Java Discussion :

jsf ajaxisé sans librairie supplémentaire


Sujet :

JSF Java

  1. #1
    Membre à l'essai
    Inscrit en
    Mai 2002
    Messages
    29
    Détails du profil
    Informations forums :
    Inscription : Mai 2002
    Messages : 29
    Points : 20
    Points
    20
    Par défaut jsf ajaxisé sans librairie supplémentaire
    Bonjour,

    Je travaille sur une application JSF avec myFaces et Tomahawk.

    Sur une page contenant une datatable, je voudrai ajouter un champs qui doit servir à filtrer sur une colonne du tableau. L'utilisateur commence à taper dans ce champs, et les les lignes ne correspondant pas à la saisie de l'utilisateur sont retirées du tableau au fur et à mesure.

    Vous me direz qu'il existe des bibliotheques jsf qui proposent ce genre de composants.
    Mais dans mon cas je voudrai éviter d'ajouter une librairie juste pour cette page!!!
    Que me conseillez vous? me mettre à l'ajax? ou simplement le javascript? c'est faisable?

    mercii

  2. #2
    Expert éminent
    Avatar de djo.mos
    Profil pro
    Inscrit en
    Octobre 2004
    Messages
    4 666
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2004
    Messages : 4 666
    Points : 7 679
    Points
    7 679
    Par défaut
    Bonjour.
    Si tu souhaites absolument éviter l'ajax, il est possible de coder ce que tu veux rien qu'avec JavaScript, mais ce serait le marteau pour écraser la mouche (tu vas aussi te heurter aux problèmes liés au comportement différent de JavaScript sur les différents navigateurs).

    Sinon, en gros, il fait faire ce que suit :
    1. dans un managed bean, quand tu récupères tes enregistrements à partir de la base de données, tu génères du code JS dans une chaine, un code comme ceci par exemple :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    var records = new Array(ligne1, ligne2, etc.);
    le contenu de ton array va dépendre de tes records. Tu peux envisager de passer par un objet js pour stocker un record :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    function record(nom, age){
      this.nom = nom;
      this.age = age;
      return this;
    }
    ton tableau devient alors :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    var records = new Array(new record(....), new record(....), etc.);
    2. Tu insères le code JS généré dans la page.
    3. Tu laisses tomber le dataTable pour l'affichage des éléments dans sla page. tu crées plutôt une table html vide (avec un id).
    4. Tu codes une fonction javaScript qui effectu la recherche avec un filtre dans le tableau records, et à chaque élement qui correspond insère une ligne dans la table (c'est du DHTML, tu peux envisager innerHTML par exemple).

    Voilou, c'est une vue d'ensemble de ce qu'il faut faire pour réaliser ça à la main.

    Bonne chance.

  3. #3
    Membre à l'essai
    Inscrit en
    Mai 2002
    Messages
    29
    Détails du profil
    Informations forums :
    Inscription : Mai 2002
    Messages : 29
    Points : 20
    Points
    20
    Par défaut
    merci pour ta reponse
    je pensais pas que ce que je veux faire serait aussi compliqué en js
    du coup je prefere tenter l'ajax et laisser tomber le js dans ce cas

Discussions similaires

  1. [Graphique] Camembert en php sans librairie
    Par frogs dans le forum Bibliothèques et frameworks
    Réponses: 4
    Dernier message: 10/11/2008, 14h03
  2. Réponses: 9
    Dernier message: 04/05/2008, 12h18
  3. Lecture midi, portable et sans librairie
    Par otspot dans le forum C++
    Réponses: 4
    Dernier message: 20/01/2008, 20h40
  4. Classe fille sans propriété supplémentaire
    Par boutss dans le forum Langage
    Réponses: 6
    Dernier message: 28/03/2007, 09h50
  5. Lecture fichier wav sans librairie
    Par websurfeur dans le forum C
    Réponses: 3
    Dernier message: 12/09/2006, 10h51

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