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

XSL/XSLT/XPATH XML Discussion :

Référence au noeud courant, pour en récupérer ses enfants directs [XPATH 1.0]


Sujet :

XSL/XSLT/XPATH XML

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé

    Femme Profil pro
    Experte JS / Conseillère en best practices / Chercheuse en programmation
    Inscrit en
    Octobre 2007
    Messages
    741
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 44
    Localisation : Belgique

    Informations professionnelles :
    Activité : Experte JS / Conseillère en best practices / Chercheuse en programmation
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Octobre 2007
    Messages : 741
    Par défaut Référence au noeud courant, pour en récupérer ses enfants directs
    Bonjour à tous,

    J'ai l'expression suivante, employée en PHP, pour parcourir un document HTML :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    [????????????]/input[@type="checkbox"][@autocomplete="on"][@checked="checked"]
    Et le sélecteur CSS correspondant :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    :scope > input[type="checkbox"]:autocomplete:checked
    Je cherche donc à savoir par quoi je dois remplacer le Auriez-vous des idées, svp?

  2. #2
    Modérateur

    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    12 582
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 12 582
    Par défaut
    Hello,

    :scope est une mécanique trop liée à CSS, il vaudrait mieux le laisser tomber en XPath et plutôt ajouter un class="input-of-interest" pour pouvoir sélectionner les éléments concernés comme ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    *[contains(@class, 'input-of-interest')]/input[@type="checkbox"][@autocomplete="on"][@checked="checked"]
    Maintenant si vraiment t'es obligé, tu dois pouvoir trouver les éléments <style> qui ont un attribut @scoped et prendre leur parent, qui en principe devrait forcément être l'élément de référence sélectionné par :scope.
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  3. #3
    Membre éclairé

    Femme Profil pro
    Experte JS / Conseillère en best practices / Chercheuse en programmation
    Inscrit en
    Octobre 2007
    Messages
    741
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 44
    Localisation : Belgique

    Informations professionnelles :
    Activité : Experte JS / Conseillère en best practices / Chercheuse en programmation
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Octobre 2007
    Messages : 741
    Par défaut
    Merci pour ta réponse, je ne puis malheureusement ajouter des attributs... il s'agit d'un outil générique, je ne veux donc surtout pas polluer les documents de mes utilisateurs.

    Mais j'ai fini par trouver le couac, j'avais un /descendant:: de trop, dans mon parser.

    Encore merci quand même

  4. #4
    Membre éclairé

    Femme Profil pro
    Experte JS / Conseillère en best practices / Chercheuse en programmation
    Inscrit en
    Octobre 2007
    Messages
    741
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 44
    Localisation : Belgique

    Informations professionnelles :
    Activité : Experte JS / Conseillère en best practices / Chercheuse en programmation
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Octobre 2007
    Messages : 741

  5. #5
    Modérateur

    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    12 582
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 12 582
    Par défaut
    Bravo si t'en es satisfait, mais là... Il est pratiquement ignoré le :scope -_-°. Tout juste remplacé par un truc pour dire "si t'a rien mis devant, 'faut quand même dire 'un élément, n'importe lequel' à la place."
    C'est pas ça que ça veut dire, :scope -_-°.

    Après, bon, comme je l'ai dit, c'est un truc trop lié à CSS, et je peux comprendre qu'on fasse des compromis quand on tombe dessus en dehors d'un contexte CSS.
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  6. #6
    Membre éclairé

    Femme Profil pro
    Experte JS / Conseillère en best practices / Chercheuse en programmation
    Inscrit en
    Octobre 2007
    Messages
    741
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 44
    Localisation : Belgique

    Informations professionnelles :
    Activité : Experte JS / Conseillère en best practices / Chercheuse en programmation
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Octobre 2007
    Messages : 741
    Par défaut
    J'ai peut-être mal interprété mais, pour ce que j'en ai compris, :scope fait référence à l'élément courant.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    document.body.querySelector(':scope > *');
    Sélectionne donc le premier enfant de body.

    Non?

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

Discussions similaires

  1. Réponses: 3
    Dernier message: 19/04/2016, 18h36
  2. se positioner sur une cellule courante pour récupérer sa valeur
    Par Aquarium33 dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 10/04/2012, 09h55
  3. Réponses: 2
    Dernier message: 21/04/2009, 10h54
  4. Réponses: 3
    Dernier message: 06/04/2007, 15h32
  5. [C#] [XML] Insérer un noeud entre un parent et ses enfants
    Par frechy dans le forum Windows Forms
    Réponses: 10
    Dernier message: 04/04/2005, 15h52

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