En utilisant XPath, comment sélectionner des nœuds qui n'ont aucun attribut (où l'attribut count = 0)?
Par exemple:
<nodes>
<node attribute1="aaaa"></node>
<node attribute1="bbbb"></node>
<node></node> <- FIND THIS
</nodes>
//node[not(@*)]
C'est le XPath pour sélectionner tous les nœuds nommés "nœud" dans le document sans aucun attribut.
<node class=""></node>
tout ce qu'on peut y faire?Sélectionne tous les <nœuds> avec zéro attribut
la source
Pour répondre au commentaire de Marek Czaplicki et développer la réponse
.... sélectionnera tous les éléments de nœud avec zéro attribut OU qui ont des attributs qui sont tous vides. S'il s'agissait simplement d'un attribut particulier qui vous intéresse, plutôt que de tous, vous pouvez utiliser
... et cela sélectionnerait tous les éléments de nœud qui n'ont pas non plus d'attribut appelé
attribute1
OR et qui ont unattribute1
attribut vide.Autrement dit, les éléments suivants seraient sélectionnés par l'une ou l'autre de ces expressions xpath
Voir l'exemple jsfiddle ici
la source