javascript 使用量角器选择列表中的第二个锚元素
声明:本页面是StackOverFlow热门问题的中英对照翻译,遵循CC BY-SA 4.0协议,如果您需要使用它,必须同样遵循CC BY-SA许可,注明原文地址和作者信息,同时你必须将它归于原作者(不是我):StackOverFlow
原文地址: http://stackoverflow.com/questions/31648203/
Warning: these are provided under cc-by-sa 4.0 license. You are free to use/share it, But you must attribute it to the original authors (not me):
StackOverFlow
Selecting second anchor element within lists using protractor
提问by Prateek Choudhury
I have a list of anchor tags and have to test clicking the 2nd tag in the list.
我有一个锚标签列表,必须测试单击列表中的第二个标签。
<ul id="shortcuts">
<li><a ui-sref="app.journeyExplorer" href="#/journey-explorer/"><span class="ng-binding">1</span></a></li>
<li><a ui-sref="app.userGroupManager" href="#/user-group-manager"><span class="ng-binding">2</span></a></li>
</ul>
After much investigation and testing reached at the conclusion that the correct statement should be:
经过大量调查和测试得出的结论是,正确的陈述应该是:
element(By.id('shortcuts')).element(By.tagName('a')).get(1).click();
But it shows undefined. If I use get() it doesn't work. without get it clicks the 1st anchor tag in the list with a warning: 'More than one anchor tag found, in such case the 1st one is selected'
但它显示未定义。如果我使用 get() 它不起作用。没有得到它点击列表中的第一个锚标记并显示警告:“找到多个锚标记,在这种情况下,第一个被选中”
Can someone please help out with this ? Thanks.
有人可以帮忙吗?谢谢。
回答by WTK
You might want to try selector below (note all()
instead of second element()
to match all anchors (so that .get()
that comes next makes any sense.
您可能想尝试下面的选择器(注意all()
而不是第二个element()
匹配所有锚点(这样.get()
接下来的选择才有意义。
element(By.id('shortcuts')).all(By.tagName('a')).get(1).click();
or via .css
或通过 .css
element(By.css('#shortcuts a:nth-child(1)').click();