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

jQuery Discussion :

Plugin ou simple fonction


Sujet :

jQuery

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Homme Profil pro
    Inscrit en
    Novembre 2007
    Messages
    274
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations forums :
    Inscription : Novembre 2007
    Messages : 274
    Par défaut Plugin ou simple fonction
    Bonjour à tous,

    Je viens vers vous pour avoir quelques informations sur l'utilité ou non de créer un plugin.

    Voici la situation dans laquelle je suis :

    1 : Requête AJAX qui renvoi un JSON
    2 : Convertir le JSON en Table HTML
    3 : Appliquer un système de tri sur les colonne (ASC, DESC)
    4 : Inclure un champ de recherche sur le tableau HTML
    5 : Inclure une pagination sur le tableau avec un nombre de ligne par page (20 lignes, 25, 30 etc..)
    6 : L'obligation de le rendre générique (pour d'autre utilisation sur le même principe, création à la volée, deux tableaux sur une même page, etc...)

    Je réfléchi si il est préférable de créer un plugin Jquery, ou simplement une fonction JavaScript que convertirai mon JSON en tableau, puis ajouterai un multi-page, un triage sur colonne, et un champ de recherche

    D'autant que de ce je connais des plugins Jquery, il faut un sélecteur (mes connaissance sont basiques, donc forte change que je soit dans le faux)

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    $("#monselecteur").monPlugin(params);
    // Sauf que ma Table HTML (mon sélecteur) n'existe pas encore
    Du coup l'autre question :
    Vaut-il mieux utiliser jquery ou du pur JavaScript ?

    Donc je viens chercher votre avis sur la chose, je pourrais utilisé des script qui existe déjà, mais on me demande de faire quelques chose de A à Z, la seule possibilité est d'utiliser Jquery mais sans plugin existant.

    D'avance merci de votre participation
    Spliffer

  2. #2
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 659
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 75
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 659
    Billets dans le blog
    1
    Par défaut
    Pourquoi vouloir réinventer la roue ou le fil à couper l'eau tiède en 4 ?

    https://datatables.net/
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

  3. #3
    Membre éclairé
    Homme Profil pro
    Inscrit en
    Novembre 2007
    Messages
    274
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations forums :
    Inscription : Novembre 2007
    Messages : 274
    Par défaut
    Comme je le disait :

    Citation Envoyé par splifferwolf Voir le message
    je pourrais utilisé des script qui existe déjà, mais on me demande de faire quelques chose de A à Z, la seule possibilité est d'utiliser Jquery mais sans plugin existant.
    Exigence du formateur qui interdit l'utilisation de datatable (qui est un plugin existant), où tout autre script/plugin existant
    Il veux qu'on réinvente la roue pour comprendre ce qu'est la roue justement, ce qu'elle fait et à quel moment elle le fait...

    // Si on me donne des gâteaux tout fait, jamais je ne pourrait le faire moi même et donc je reste dépendant de mon pâtissier
    // Jamais je ne pourrait savoir quel sont les ingrédients et leur dosage sans mon pâtissier

    Ça n'aurait tenu qu'a moi, j'aurais utilisé datatable ( que j'utilise déjà sur des petits projets perso )
    Pour mon formateur, il est très pratique d'utilisé des plugins ou librairies déjà existantes, mais il est plus satisfaisant et réconfortant de pouvoir le faire soit-même.
    Et je pense qu'il n'a pas tout à fait tords lol

    D'ou ma réflexion sur le fait de créer un plugin jquery ou de me dissocier de jquery pour ne pas dépendre de lui et donc utilisé du JavaScript pur


  4. #4
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 659
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 75
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 659
    Billets dans le blog
    1
    Par défaut
    l'idée serait de passer par ajax et faire le requetes coté serveur avec un order by, c'est ce qui me parait le plus simple
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

  5. #5
    Membre éclairé
    Homme Profil pro
    Inscrit en
    Novembre 2007
    Messages
    274
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations forums :
    Inscription : Novembre 2007
    Messages : 274
    Par défaut
    J'y ai penser aussi, mais il ne veux aucun chargement de page ni aucune nouvelle requête.
    Il ne veux pas nous simplifier la vie justement (j'utilise ses propre mots) lol

    Si je fait une requête SQL avec un LIMIT, je doit faire un rechargement de page si je veux redéfinir ce LIMIT (si je ne dit pas de bêtise); même en passant par ajax

    ce que le formateur veux :

    1) On va chercher la liste complète des clients (base de données contenant 30.000 lignes), ça c'est fait, j'ai fait ma petite requête ajax qui récupère mes clients au format json
    2) créer un tableau HTML (avec un pseudo multi-page), qui m'afficherai 25 lignes par 25 lignes sans rechargement de page, ni nouvelle requête ajax.
    3) intégrer un multi page
    4) faire une recherche sur ce tableau
    5) Trier par ASC, DESC, sur les colonne.
    6) Le tout obligatoirement en JavaScript (hormis la première requête ajax qui nécessite un script serveur)

    En gros c'est cela que je doit faire, je me demande juste si je crée simplement un plugin jquery ou si je le fait en JavaScript pur, lequel serait plus porteur j'ai envie de dire ?

  6. #6
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 659
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 75
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 659
    Billets dans le blog
    1
    Par défaut
    Alors il faut un gros json avec toutes les données au premier chargement
    Il suffira donc de taper dans le json pour l'affichage ...

    En fonction du nombre de lignes cela peut s'avérer périlleux ...

    Sinon un gros tableau et on filtre les lignes
    https://www.developpez.net/forums/d1...eurs-colonnes/
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

  7. #7
    Expert confirmé
    Avatar de mathieu
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    10 668
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 10 668
    Par défaut
    au sujet de la question d'utiliser jquery, cette bibliothèque a été très utile il y a quelques années mais depuis, les navigateurs ont bien évolués et je vous conseille donc de ne plus utiliser jquery.
    si jamais vous avez l'habitude de passer par jquery pour certaines fonctionnalités, voilà 2 pages qui donnent des idées de remplacement en javascript pur :
    https://youmightnotneedjquery.com/
    https://github.com/camsong/You-Dont-...r/README-fr.md

Discussions similaires

  1. Réponses: 1
    Dernier message: 24/01/2009, 12h37
  2. [Smarty] convertir une simple fonction pour réutiliser avec Smarty
    Par yaz1234 dans le forum Bibliothèques et frameworks
    Réponses: 3
    Dernier message: 06/11/2008, 15h16
  3. probleme avec une simple fonction
    Par francky57 dans le forum VB 6 et antérieur
    Réponses: 3
    Dernier message: 23/10/2008, 11h01
  4. création d'un plugin eclipse simple?
    Par castrogne dans le forum Eclipse Java
    Réponses: 3
    Dernier message: 13/07/2006, 10h40
  5. Réponses: 13
    Dernier message: 20/06/2005, 14h13

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