Donné ce document:Quel est l'équivalent Flex/AS3/E4X de cette requête xpath?
<doc>
<element>
<list>
<key attr='val'/>
</list>
</element>
<element>
<list>
<key attr='other'/>
</list>
</element>
<element>
<list/>
</element>
</doc>
Je veux un équivalent e4x du XPath //element[list/key/@attr="val"]
. Est-il possible de faire ça?
Qu'est-ce que cela fera dans les cas où un élément clé existe sans attribut @attr? Je sais que XPath ne renvoie aucun noeud pour cela, mais des cratères e4x avec un type d'erreur d'attribut manquant pour les expressions simples. Cela arrive-t-il aussi ici? –
Dans mon expérience, si l'attribut est manquant rien ne sera retourné, aucune erreur ne sera levée. – invertedSpear
Cela ne causera pas de problèmes dans AS3. Il y a un problème en JavaScript. Tant que l'attribut est en cours de vérification sur un noeud enfant (même s'il existe ou non) dans le filtre, aucune erreur ne sera levée. '.. (@ bar ==" baz ")' lancerait une erreur car tous les éléments n'ont pas d'attribut 'bar', donc vous voudriez essayer' .. (function :: attribute ("bar") == " baz ")' en JavaScript. –