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 :

Crochet dans les filtres


Sujet :

jQuery

  1. #1
    Membre régulier

    Homme Profil pro
    Retraité
    Inscrit en
    Mai 2005
    Messages
    39
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 70
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Mai 2005
    Messages : 39
    Points : 102
    Points
    102
    Par défaut Crochet dans les filtres
    Bonjour,
    Comment gérer les crochets dans les id avec les filtres jQuery?

    J'ai une liste d'élément dans un formulaire dont les noms sont composés d'un tableau:
    exemple:
    Code html : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    <input type='text' name='search[nom]' id='search[nom]' />
    <input type='text' name='search[prenom]' id='search[prenom]' />
    <input type='text' name='search[age]' id='search[age]' />
    Ce qui permet en php de récupérer directement le tableau associatif "search" dans l'exemple
    mais si je fais en javascript:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $('#search[nom]').css("width","500px");
    jQuery interprète les crochets comme un filtre d'attribut et non comme partie de l'id de 'élément.

    Pour régler ce problème j'ai pour le moment ajouter un attribut ou je remplace les crochets par un underscore:
    Code html : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    <input type='text' name='search[nom]' id='search[nom]' search_nom_='' />
    <input type='text' name='search[prenom]' id='search[prenom]' search_prenom_='' />
    <input type='text' name='search[age]' id='search[age]' search_age_='' />
    et je fait le filtre sur cet attribut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $('[search_nom_]).css("width","500px");
    mais ça ne parait pas la meilleure solution.

    Ya-t-il une solution pour régler ce problème et permettre d’utiliser les crochets dans les id des éléments d'un formulaire et utiliser jQuery?
    JJDai.

  2. #2
    Modérateur

    Avatar de NoSmoking
    Homme Profil pro
    Inscrit en
    Janvier 2011
    Messages
    16 959
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations forums :
    Inscription : Janvier 2011
    Messages : 16 959
    Points : 44 122
    Points
    44 122
    Par défaut
    Bonjour,
    je ne vois pas l'utilité de tes ID !
    de plus pourquoi ne pas le faire directement dans le CSS ?

  3. #3
    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 637
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    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 637
    Points : 66 661
    Points
    66 661
    Billets dans le blog
    1
    Par défaut
    Je pense que le préalable serait de dire qu'un id NE DOIT PAS CONTENIR DE CROCHET selon les specs...


    Citation Envoyé par W3C
    ID and NAME tokens must begin with a letter ([A-Za-z]) and may be followed by any number of letters, digits ([0-9]), hyphens ("-"), underscores ("_"), colons (":"), and periods (".").

    Bien que cela soit syntaxiquement incorrect, et totalemnet inutile ( php se basant sur le name pour générer le tableau ...)
    il est possible d'échapper les crochets

    Citation du W3C
    ou
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
     $('[id=["search\\[nom\\]"]')
    Mais encore une fois je ne saurais trop que déconseiller l'utilisation des crochets dans l'id
    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 !

  4. #4
    Membre régulier

    Homme Profil pro
    Retraité
    Inscrit en
    Mai 2005
    Messages
    39
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 70
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Mai 2005
    Messages : 39
    Points : 102
    Points
    102
    Par défaut Crochet dans les id
    Bonjour:
    Je pense que le préalable serait de dire qu'un id NE DOIT PAS CONTENIR DE CROCHET selon les specs...
    Bin non justement puisque que la possibilité est offerte de gérer des tableaux pourquoi ne pas l'utiliser et l'exploiter et se priver de cet atout qui de mon point de vue est très pratique.
    Un exemple: Supposons une liste d'enregistrement dont on veux modifier le statut par exemple:
    un truc du style:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    <form method="post">
    <input type='text' name='fiche[125]' id='fiche[125]' value='0'  /> 
    <input type='text' name='fiche[132]' id='fiche[132]' value='1'  /> 
    <input type='text' name='fiche[112]' id='fiche[112]' value='0'  /> 
    <input type='text' name='fiche[222]' id='fiche[222]' value='1'  /> 
    <input type='text' name='fiche[333]' id='fiche[333]' value='0'  /> 
    .....
    </form>
    le nombre entre crocher représentant l'identifiant dans la table, On récupère directement un tableau avec pour clé les identifiants de la table, c'est quand même plus pratique que:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    <form method="post">
    <input type='text' name='fiche_125' id='fiche_125' value='0'  /> 
    <input type='text' name='fiche_132' id='fiche_132' value='1'  /> 
    <input type='text' name='fiche_112' id='fiche_112' value='0'  /> 
    <input type='text' name='fiche_222' id='fiche_222' value='1'  /> 
    <input type='text' name='fiche_333' id='fiche_333' value='0'  /> 
    .....
    </form>
    ou il faut transformer le nom à l'aller et au retour

    Je n'ai pas essayer d’échapper les crochet comme en php, mais je vais tester.


    JJdai

  5. #5
    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 637
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    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 637
    Points : 66 661
    Points
    66 661
    Billets dans le blog
    1
    Par défaut
    le tableau est généré de par l'utilisation du NAME, pas de l'id ...
    les crochets sont autorisés a cet effet dans le name, pas dans l'id !
    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 !

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Question sur les Filtres dans une table Access
    Par OobiloO dans le forum Bases de données
    Réponses: 1
    Dernier message: 19/05/2008, 12h09
  2. Filtre dans les données d'un tableau dynamique
    Par lbar012001 dans le forum Excel
    Réponses: 2
    Dernier message: 07/06/2007, 14h06
  3. Réponses: 2
    Dernier message: 08/03/2007, 10h23
  4. Prendre en compte les espaces dans les filtres
    Par Ekinoks dans le forum Applications et environnements graphiques
    Réponses: 1
    Dernier message: 03/11/2006, 02h57

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