2017-05-23 1 views
0

Voici le site Web auquel j'essaie d'accéder. Je ne veux pas l'onglet par défaut (Day) si, je veux sélectionner l'onglet SaisonComment automatiser la sélection d'onglets sur un site Web

https://www.eex.com/en/market-data/power/futures/uk-financial-futures#!/2017/05/23

Le lien semble être exactement la même selon onglet est choisi de fait la différenciation impossible pour autant que je peux dire.

Toute aide à ce sujet serait grandement appréciée, en utilisant la méthode de programmation et le langage appropriés.

Cordialement

Barry Walsh

Répondre

0

L'URL ne change pas puisque c'est une demande ajax, que vous pouvez voir de la fonction getPageData de MarketDataTableAController. Vous pouvez lire à leur sujet ici https://developer.mozilla.org/en-US/docs/AJAX/Getting_Started

Ive inspecté votre code HTML et vous semblez utiliser angulaire. En plus d'inpection, vous pouvez voir que les onglets ont l'attribut ng-click = "setActiveTab (tab)" sur eux. Donc, lorsque l'utilisateur clique, cette fonction est exécutée. Il s'agit d'utiliser cette fonction avec l'objet tab approprié pour modifier le contenu. Vous pouvez par exemple mettre setActiveTab (tabulation) dans la méthode init de votre controller car setActiveTab() appelle la fonction getPageData() pour mettre à jour la page.

L'onglet que vous recherchez est page.tabs [5] ($ parent.page.tabs [5] si vous faites référence à TabController) car il s'agit de l'onglet avec l'étiquette de saison. Passez cela à setActiveTab() et il devrait vous montrer la saison à la place.

Cependant, cela peut ne pas être une bonne solution car la commande de tableau d'onglets peut changer. Ensuite, vous devrez faire une boucle sur tous les objets dans page.tabs et voir si tab.label === "Season" et passer cela dans la fonction à la place ou mieux encore utiliser le service de filtre $ fourni par angulaire qui aurait l'air plus propre.

Votre source de code semble également être minimisée et n'est pas très facile à lire.