Actualisation du formulaire a la selection d'un element de liste

Réduire
X
 
  • Filtrer
  • Heure
  • Afficher
Tout effacer
nouveaux messages

  • Actualisation du formulaire a la selection d'un element de liste

    Bonjour a tous,

    Je voudrais pouvoir capturer un mp3, associé a un artiste, et a un album
    Dans mon formulaire de capture, quand je selectionne un artiste, j'aimerai recharger ma page pour ne montrer dans ma liste d'album que ceux de l'artiste selectionné ( AJOUT D'une clause WHERE artistid=xxx)

    Je pense utiliser un evenement javascript onChange dans la liste deroulante, mais je ne sais pas quoi mettre dans la fonction js....
    Comment fixer la variable artistid? Si je fais un submit, je vais normalement revenir a la liste de mp3, comment faire pour rester sur la meme page ( Simuler le bouton appliquer et non Sauvegarder)

    Merci d'avance !

  • #2
    Re : Actualisation du formulaire a la selection d'un element de liste

    mmmmm, apres une demi journée de galere, j'y suis presque, mais j'y suis pas du tout !!!
    Je crois apres tout que le mieux, ca serait de trouver un composant qui possede cette meme fonctionalité ( Quand tu selectionne un champ, de type liste par exemple), ca recharge la page d'administration et ca actualise les autres champs...
    Vous en connaissez un? ( Le plus simple possible pliz)

    Commentaire


    • #3
      Re : Actualisation du formulaire a la selection d'un element de liste

      Pour répondre à ta première question, sur le comment faire, je ne sais pas comment tu codes, si c'est un composant propre ou pas. L'astuce consiste à utiliser une fonctionnalité Javascript qui exécuterait un code ajax pour récupérer, sous la forme XML, les données de la liste secondaire.

      Oui, c'est sacrément technique mais ta question l'est tout autant.

      Voir ce tutoriel qui explique comment faire de l'Ajax pour mettre à jour une liste déroulante dépandante (http://docs.joomla.org/Ajax_using_MooTools) et cette discussion http://forum.joomla.fr/showthread.ph...AJAX-Mootools&

      Bonne prog'
      Christophe (cavo789)
      Mon blog, on y parle Docker, PHP, WSL, Markdown et plein d'autres choses : https://www.avonture.be
      Logiciel gratuit de scan antivirus : https://github.com/cavo789/aesecure_quickscan (plus de 45.000 virus détectés, 700.000 fichiers sur liste blanche)​

      Commentaire


      • #4
        Re : Actualisation du formulaire a la selection d'un element de liste

        Merci pour ta reponse cavo,
        Dans un premier temps, est ce que AJAX est necessaire a l'operation ? Personnellement, un rafraichissment de page ne me derange pas, et effectivement l'usage d'AJAX complexifie grandement l'opération.


        Sinon, question code, ce que j'ai fait est definir une task 'actu', qui a la meme fonction que 'apply' mais avec un store qui ne stocke pas dans la base de donnee.

        Dans mon code html, j'ai mis une petite fonction js simple :

        Code HTML:
        function changeArtist(newValue){
        		var form = document.adminForm;
        		form.artistid.value = newValue;
        		submitform('actu');
        	
        	}
        que j'appelle sur ma lista par onChange= changeArtist(this.value)

        Ca "marche" , sauf que ca garde les anciennes données du formulaire...

        Sinon, je me suis apercu que ce comportement etait le meme que la dependance de liste section / categories... Je vais si je trouve un exemple par la !



        Envoyé par cavo789 Voir le message
        Pour répondre à ta première question, sur le comment faire, je ne sais pas comment tu codes, si c'est un composant propre ou pas. L'astuce consiste à utiliser une fonctionnalité Javascript qui exécuterait un code ajax pour récupérer, sous la forme XML, les données de la liste secondaire.

        Oui, c'est sacrément technique mais ta question l'est tout autant.

        Voir ce tutoriel qui explique comment faire de l'Ajax pour mettre à jour une liste déroulante dépandante (http://docs.joomla.org/Ajax_using_MooTools) et cette discussion http://forum.joomla.fr/showthread.ph...AJAX-Mootools&

        Bonne prog'
        Dernière édition par xoco à 22/09/2011, 18h42

        Commentaire


        • #5
          Re : Actualisation du formulaire a la selection d'un element de liste

          Je pense que tu fais fausse route; oui, ajax est un peu plus compliqué à appréhender mais une fois que tu l'as en main, ce n'est que du bonheur tant parce que, au final, ben, c'est pas si compliqué : ce qui est difficile, c'est de se faire la main et de piger le truc.

          Fausse route aussi au niveau de ton interface : ton utilisateur ne va pas trouver très fun que la page se recharge, il va râler et tu risques de le perdre à terme. Nous sommes à l'heure du Web 2 où ajax est partout, vraiment partout.
          Christophe (cavo789)
          Mon blog, on y parle Docker, PHP, WSL, Markdown et plein d'autres choses : https://www.avonture.be
          Logiciel gratuit de scan antivirus : https://github.com/cavo789/aesecure_quickscan (plus de 45.000 virus détectés, 700.000 fichiers sur liste blanche)​

          Commentaire


          • #6
            Re : Actualisation du formulaire a la selection d'un element de liste

            Oui, je suppose que tu as raison.
            J'ai été voir le com_content, et il utilise une fonction javascript : changeDynaList. Je vais tester les 2.
            Merci !

            Edit : En fait, la dependance des listes section /categories ne recharge pas la page, donc ca doit tourner avec du AJAX apriori...

            Mais vu les tutoriaux, je pense que son application est aussi complexe que celle d'AJAX
            Va falloir que je m'y mette un jour ou l autre de toute facon hehehe...
            Dernière édition par xoco à 23/09/2011, 03h44

            Commentaire


            • #7
              Re : Actualisation du formulaire a la selection d'un element de liste

              Oui, et je te promets qu'une fois pigé le truc, ajax, c'est pas si difficile. J'en ai bourré mon composant.

              Je te dirais bien d'aller le tester mais la programmation est complexe (40.000 lignes de code) et les fichiers s'appellent les uns les autres. Si cela te tente, télécharge-là (voir ma signature). Ensuite, dans le dossier /media/com_allevents/javascript, tu vas trouver un fichier nommé ajax.js avec une fonction Ajaxify(). Cette fonction est documentée et il y a un exemple d'utilisation.

              Tu vas trouver un appel à la fonction getQuerystring(). Tu peux simplement supprimer cette ligne, pas d'intérêt pour toi.

              L'appel se fait via un "onchange" au niveau du select. La fonction que je mets dans le onchange est "ajxRefreshCombo" que tu trouveras dans ajax.js. Fonction qui demande deux paramètres, le ID du select master (Section p.e.) et le ID du select slave (Category p.e.).

              Bye
              Christophe (cavo789)
              Mon blog, on y parle Docker, PHP, WSL, Markdown et plein d'autres choses : https://www.avonture.be
              Logiciel gratuit de scan antivirus : https://github.com/cavo789/aesecure_quickscan (plus de 45.000 virus détectés, 700.000 fichiers sur liste blanche)​

              Commentaire


              • #8
                Re : Actualisation du formulaire a la selection d'un element de liste

                PS: Je déplace ton post en section Développement vu la tournure de la discussion
                Christophe (cavo789)
                Mon blog, on y parle Docker, PHP, WSL, Markdown et plein d'autres choses : https://www.avonture.be
                Logiciel gratuit de scan antivirus : https://github.com/cavo789/aesecure_quickscan (plus de 45.000 virus détectés, 700.000 fichiers sur liste blanche)​

                Commentaire


                • #9
                  Re : Actualisation du formulaire a la selection d'un element de liste

                  Salut Cavo, J'ai essayé la selection de liste dependantes avec changeDynaList... C'est pas terrible, car je dois prereplire tous les tableaux puis les ecrire en js. Donc je fais plein plein de query... Ca marche, mais ca le fait sur du petit, des que tu as des grandes listes, ca va etre lourd je pense. Donc je suis pas tres satisfait, je vais regarder l'AJAX ! ;D

                  Commentaire

                  Annonce

                  Réduire
                  Aucune annonce pour le moment.

                  Partenaire de l'association

                  Réduire

                  Hébergeur Web PlanetHoster
                  Travaille ...
                  X