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

Bibliothèques & Frameworks Discussion :

supprimer un élément de dijit.form.FilteringSelect


Sujet :

Bibliothèques & Frameworks

  1. #1
    Membre régulier Avatar de moukit233
    Développeur informatique
    Inscrit en
    Mai 2009
    Messages
    240
    Détails du profil
    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Mai 2009
    Messages : 240
    Points : 123
    Points
    123
    Par défaut supprimer un élément de dijit.form.FilteringSelect
    salut ,
    j'ai un dijit.form.FilteringSelect qui contien une liste des articles :
    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
     
    <div dojoType="dojo.data.ItemFileWriteStore"
            data='<?php echo htmlentities($this->listeArticles, ENT_QUOTES) ?> '
            jsid="storeArticles"
            id="storeArticles"> </div>
    <div style="float:left;width:300px;">
            liste Articles :<br></br>
            <input id="listeArticles"
                    jsId="listeArticles"
                    dojoType="dijit.form.FilteringSelect"
                    style="width:140px;"
                    store = "storeArticles"
                    value="0"
                    searchAttr="nomArticle"/>
        </div>
    je veux savoir comment je peux supprimer l'element selectionner ds FilteringSelect ????

    merci d'avance
    «En théorie, la théorie et la pratique sont les mêmes. En pratique, ils le sont pas."
    Albert Einstein.

  2. #2
    Membre régulier Avatar de moukit233
    Développeur informatique
    Inscrit en
    Mai 2009
    Messages
    240
    Détails du profil
    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Mai 2009
    Messages : 240
    Points : 123
    Points
    123
    Par défaut
    Re,
    j'ai trouvé un petit truc qui me permet de supprimer l'element selectionner ds dijit.form.FilteringSelect :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
        var myWidget  =  dijit.byId('listeArticles');
        //je recupere item selectionner
        var itemClique = myWidget.attr('item');
        // je supprime 'item selectionner du store
        myWidget.store.deleteItem(itemClique);
    mais mtn j'ai un autre problem :
    quand je selectionne un element puis je clique sur boutton supprimer, je supprime l'element selectionnee dans store mais cette element reste toujour afficher (selectionner dans le feltring)..
    je veux une moyen pour actualiser le store ????
    «En théorie, la théorie et la pratique sont les mêmes. En pratique, ils le sont pas."
    Albert Einstein.

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Septembre 2002
    Messages
    63
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2002
    Messages : 63
    Points : 63
    Points
    63
    Par défaut
    Je pense que ce n'est pas le store que tu veux actualiser, puisqu'il l'est déjà, mais plustôt ta liste : refait un fetch() sur la liste

    Eric

  4. #4
    Membre régulier Avatar de moukit233
    Développeur informatique
    Inscrit en
    Mai 2009
    Messages
    240
    Détails du profil
    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Mai 2009
    Messages : 240
    Points : 123
    Points
    123
    Par défaut
    Re,
    Merci de votre reponse..
    voila j'ai trouvé la solution............
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
     //je recupere premiere item ds mon store
      myWidget.store.fetchItemByIdentity( {
           identity :0,
           onItem : function(item) {
                firstItem = item;
           }
      });
      // je supprime 'item selectionner du store
      myWidget.store.deleteItem(itemClique);
      //j'affecte le nom de la premiere item a la feltring
      dojo.byId('listeArticles').value = firstItem.nomArticle;
    «En théorie, la théorie et la pratique sont les mêmes. En pratique, ils le sont pas."
    Albert Einstein.

  5. #5
    Membre régulier Avatar de moukit233
    Développeur informatique
    Inscrit en
    Mai 2009
    Messages
    240
    Détails du profil
    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Mai 2009
    Messages : 240
    Points : 123
    Points
    123
    Par défaut
    Re-salut

    Maintenant j'ai un autre problème....
    je veux ajouter un new item dans le store de mon widgetdijit.form.FilteringSelect ...
    j'ai des catégories dans la liste du widget, et je veux que l'insertion soit faite dans une de ces catégories (en spécifiant l'emplacement de l'insertion),
    mais le problème est que l'insertion se fait toujours à la fin de la liste.
    Quelqu'un a une idée qui peut m'aider?
    merci d'avance.
    «En théorie, la théorie et la pratique sont les mêmes. En pratique, ils le sont pas."
    Albert Einstein.

  6. #6
    Membre du Club
    Profil pro
    Inscrit en
    Septembre 2002
    Messages
    63
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2002
    Messages : 63
    Points : 63
    Points
    63
    Par défaut
    Et si l'element effacé "itemClique" est le premier de la liste, avec id='0' ?

  7. #7
    Membre régulier Avatar de moukit233
    Développeur informatique
    Inscrit en
    Mai 2009
    Messages
    240
    Détails du profil
    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Mai 2009
    Messages : 240
    Points : 123
    Points
    123
    Par défaut
    en fait je ne peut pas supprimer l'element 0
    car le store de mon widget sous forme d'un arbre (pere + children)
    donc je ne peut pas supprimere les peres
    et d'autre chose pr les pere (les categorie) j'ai les ajouter statiquement ds le store de mon widget ils n'existe,t pas ds ma base.......
    «En théorie, la théorie et la pratique sont les mêmes. En pratique, ils le sont pas."
    Albert Einstein.

  8. #8
    Membre du Club
    Profil pro
    Inscrit en
    Septembre 2002
    Messages
    63
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2002
    Messages : 63
    Points : 63
    Points
    63
    Par défaut
    Le deuxième parametre de newItem s'appelle "parentInfo".
    Il y a une bonne explication dans ... le code source (!) suivant :

    /dojo/data/api/Write.js

    Cela devrait te permettre d'ajouter le nouvel item ou tu veux.
    Eric.

  9. #9
    Membre régulier Avatar de moukit233
    Développeur informatique
    Inscrit en
    Mai 2009
    Messages
    240
    Détails du profil
    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Mai 2009
    Messages : 240
    Points : 123
    Points
    123
    Par défaut
    Re,
    oui j'ai essayé avec parentInfo mais ça marche pas :
    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
     
      //je recupere premiere item ds mon store
      myWidget.store.fetchItemByIdentity( {
           identity :0,
           onItem : function(item) {
                itemPere = item;
           }
      });
      // je construire le newItem
      var myNewItem = {"id" : ID, "nom": nomArticle, "type": typeArticle};
      //parent item
      var pInfo = { parent: itemPere, attribute: "children"};
      myWidget.store.newItem(myNewItem, pInfo);
      console.log('element pere :', itemPere);
      //j'affecte le nom de la premiere item a la feltring
      dojo.byId('listeArticles').value = firstItem.nomArticle;
    mais il ajoute toujour en fin de la liste.

    par contre si je fait :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    console.log('element pere :', itemPere)
    apres l'insertion j'ai bien newItem ds les children de l'element pere ....
    «En théorie, la théorie et la pratique sont les mêmes. En pratique, ils le sont pas."
    Albert Einstein.

  10. #10
    Expert confirmé
    Avatar de emmanuel.remy
    Inscrit en
    Novembre 2005
    Messages
    2 855
    Détails du profil
    Informations personnelles :
    Âge : 55

    Informations forums :
    Inscription : Novembre 2005
    Messages : 2 855
    Points : 4 045
    Points
    4 045
    Par défaut
    Salut,

    L'ajout d'un item dans le store ne se fait pas à une position particulière. Si tu précises un parent, alors le store en tient compte en modifiant l'attribut associé multivalué du parent. C'est donc normal que ton élément apparaisse en fin de liste, elle-même n'étant pas consciente de cette notion de categorie.

    Joue sur le fait que tu peux spécifier un ordre de tri à la liste, via sa propriété fetchProperties

    Bon dev,

    ERE
    Quand une tête pense seule, elle devient folle.

  11. #11
    Membre régulier Avatar de moukit233
    Développeur informatique
    Inscrit en
    Mai 2009
    Messages
    240
    Détails du profil
    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Mai 2009
    Messages : 240
    Points : 123
    Points
    123
    Par défaut
    Salut,
    merci de votre reponse
    En fait, je ne comprends pas ce que vous voulez dire
    Citation Envoyé par emmanuel.remy Voir le message
    Joue sur le fait que tu peux spécifier un ordre de tri à la liste, via sa propriété fetchProperties
    ERE
    «En théorie, la théorie et la pratique sont les mêmes. En pratique, ils le sont pas."
    Albert Einstein.

Discussions similaires

  1. [Dojo] [dijit.Form.FilteringSelect] Rendu curieux : tous les boutons de la dropList s'affichent
    Par Giovanny Temgoua dans le forum Bibliothèques & Frameworks
    Réponses: 3
    Dernier message: 30/11/2011, 10h03
  2. [Dojo] Inter-Liaison de plusieurs dijit.form.FilteringSelect
    Par cfried dans le forum Bibliothèques & Frameworks
    Réponses: 5
    Dernier message: 12/08/2011, 11h31
  3. [Dojo] dijit.form.FilteringSelect et maxHeight
    Par Choubaka35 dans le forum Bibliothèques & Frameworks
    Réponses: 1
    Dernier message: 22/06/2011, 10h07
  4. Supprimer un élément du form !
    Par Rhend dans le forum Général JavaScript
    Réponses: 6
    Dernier message: 14/04/2011, 11h43
  5. Supprimer un élément d'un tableau
    Par CaptainChoc dans le forum Langage
    Réponses: 15
    Dernier message: 23/12/2002, 23h14

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