2015-07-27 3 views
0

Je veux demander si siesta possible d'écrire sélecteur par balise personnalisée:sélecteur Siesta par des balises personnalisées

par exemple, j'ai composant:

<a class="x-btn x-unselectable x-box-item x-toolbar-item x-btn-default-small" style="min-width: 75px; right: auto; left: 232px; top: 0px; margin: 0px;" hidefocus="on" unselectable="on" id="button-1017" data-id="loginBtn" tabindex="0" componentid="button-1017" target="_blank"> 

qui depuis la console que je peux sélectionner l'aide du sélecteur CSS: document.querySelector('a[data-id="loginBtn"]')

mais si j'écris dans le test siesta: t.chain({click: '>> a[data-id="loginBtn"]'}, aucun composant est trouvé.

Comment le sélecteur doit ressembler à trouver le composant?

+0

Votre balisage donné montre une div, mais vous parlez à propos d'un élément. Où est-ce un élément? Si ce n'est pas dans cette div, vous ne serez pas en mesure de le trouver de cette façon. Aussi, je ne pensais pas que '>>' était implémenté n'importe où ... – BoltClock

+0

désolé j'ai posté un mauvais élément, maintenant changé – Edgar

Répondre

1

Le sélecteur de votre appareil devrait ressembler à ceci:

t.chain(
    {click: 'a[data-id=loginBtn]'} 
) 

La méthode click accepte ActionTarget, et que vous utilisiez >> qui est utilisé pour la requête de composant ExtJS. Vous pouvez trouver plus d'informations sur la façon de spécifier le type de cible sur la page docs.

Si vous testez l'application ExtJS, vous devriez être en mesure de cliquer aussi directement le composant bouton ExtJS. Il y a plusieurs façons comment cibler ce bouton, mais si vous avez défini la configuration itemId qui est identifiant unique du composant, la requête serait similaire:

t.chain(
    {click: '>> button[itemId=loginBtn]'} 
)