J'essaie de sélectionner tous les éléments <input>
d'un formulaire, sauf ceux avec des ID contenant les mots foo
ou bar
. Comment puis-je faire cela en utilisant ExtJS 2.3.0? J'ai essayé ce qui suit:Sélection d'éléments qui ne contiennent pas un certain ID en utilisant ExtJS
Ext.query("select,input:not([id*=foo][id*=bar])", "SomeForm");`
... mais cela ne fonctionne pas. Hors ID avec foo
en eux semble fonctionner très bien:
Ext.query("select,input:not([id*=foo])", "SomeForm")`
Je ne suis pas sûr de savoir comment ajouter une deuxième chaîne d'identification. Des idées?
Cela fonctionne. Que faire si je voulais exclu de ID contenant 'baz' en plus de' foo' et 'bar'? Aussi, je semble avoir la même erreur ('Erreur parsing selector') quand je ne passe pas une racine spécifique avec' Ext.query ("input: not ([id * = foo]): not ([id * = bar]) ");" Gardez à l'esprit que je suis limité à Ext 2.3.0. – pmdarrow
Désolé, j'ai lu 3.2 ... si vous obtenez la même erreur, je suppose que c'est un bug dans la version 2.3 alors, ou peut-être que ce n'était pas supporté. Vous devriez pouvoir appeler 'Ext.DomQuery.filter' sur le résultat de l'appel' Ext.Domquery.filter' précédent et ainsi de suite. Si vous en avez beaucoup, je vous suggère de créer votre propre fonction qui reçoit un tableau d'ID à exclure, fait le premier appel 'query', puis boucle le tableau d'ID à exclure et appelle' filter' aussi souvent que nécessaire . À moins que quelqu'un ne sache mieux utiliser ExtJS, c'est ce que je ferais. – SBUJOLD
Je viens juste de faire une boucle comme vous l'avez dit, mais cette réponse fonctionne aussi donc je la marquerai comme acceptée. – pmdarrow