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 éclairé 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
    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

  2. #2
    Membre éclairé 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
    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 ????

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

    Informations forums :
    Inscription : Septembre 2002
    Messages : 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 éclairé 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
    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;

  5. #5
    Membre éclairé 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
    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.

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

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

  7. #7
    Membre éclairé 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
    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.......

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

    Informations forums :
    Inscription : Septembre 2002
    Messages : 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 éclairé 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
    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 ....

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

    Informations forums :
    Inscription : Novembre 2005
    Messages : 2 855
    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

  11. #11
    Membre éclairé 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
    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

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