【发布时间】:2015-01-07 06:27:39
【问题描述】:
是否可以在另一个元素之后获取一个元素? (不是子元素)
HTML 代码:
<input id="first-input" type="text"/>
<ul>
<li>1</li>
<li>2</li>
</ul>
<input id="second-input" type="text"/>
<ul>
<li>1</li>
<li>2</li>
</ul>
<input id="third-input" type="text"/>
<ul>
<li>1</li>
<li>2</li>
</ul>
如何在element(by.id('second-input')) 之后获得ul?
这是我的理解:
element(by.id('second-input')).element(by.tagName('ul')) // This doesn't work because this looks for sub-elements in <input id="second-input">
element.all(by.tagName('ul')).first() // This doesn't work because it gets the 'ul' following <input id="first-input">
element(by.id('second-input')).element.all(by.tagName('ul')) // This doesn't work because this looks for all 'ul' elements as sub-elements of <input id="second-input">
在我的例子中,这些 'ul's 没有唯一的 id 或任何唯一的东西。
【问题讨论】:
-
给 uls 唯一的 ID。由于它没有嵌套,javascript不会理解你的函数
-
UL 由第三方库生成。我不想碰它。还有其他选择吗?
标签: angularjs testing jasmine protractor end-to-end