我怎样才能得到这个link元素?总是显示“无法找到带有链接文本的元素”==“搜索”
How can i get this link element? Always show "Unable to find element with link text == Search"
我正在学习硒与c#,我试图点击列表下的链接,但总是显示错误"无法找到元素与链接文本==搜索",代码如下:
<div id="ctl00_subNavMain_upSubMenu">
<ul id="ctl00_subNavMain_subMenu">
<li class="btnHome selected">
<a href="javascript:__doPostBack('ctl00$subNavMain$subMenu','0')">Home</a>
</li>
<li class="btnNew">
<a href="javascript:__doPostBack('ctl00$subNavMain$subMenu','1')">New Observation</a>
</li>
<li class="btnTestPlatform">
<a href="javascript:__doPostBack('ctl00$subNavMain$subMenu','2')">Test Platforms</a>
</li>
<li class="btnSearch">
<a href="javascript:__doPostBack('ctl00$subNavMain$subMenu','3')">Search</a>
</li>
<li class="btnOTS">
<a href="javascript:__doPostBack('ctl00$subNavMain$subMenu','4')">Remedy OTS</a>
</li>
<li class="btnBug">
<a href="javascript:__doPostBack('ctl00$subNavMain$subMenu','5')">Bugzilla</a>
</li>
</ul>
</div>
我已经试过了:
ReadOnlyCollection<IWebElement> links = driver.FindElements(By.XPath("//*[contains(text(),'Search')]"));
MessageBox.Show(links.Count.ToString());
foreach (IWebElement link in links)
{
if(link.TagName=="a")
{
//MessageBox.Show(link.Displayed.ToString());
link.Click();
}
}
,但它显示错误"此元素不能被点击",我已经尝试使用"链接。显示的,都是假的,所以我怎么解决它,这对我来说是个大问题,谢谢!
我试过了:" MessageBox.Show(link.Enabled.ToString());" all return"true"
解决方案:"javascriptexecuter js= (javascriptexecuter)driver;js.executescript("参数[0]。点击()",链接);"非常感谢大家。
您可以在find元素中使用它作为xpath:
//*[包含(文本(),"搜索")]
我同意Hezi israel的观点。除非您正在寻找多个元素共同使用的字符串,否则最好使用'contains'而不是'='。我已经测试了在特定单词'之后有空格的网页,这导致我使用'='的xpath失败。使用'contains'可以保护你。
相关文章:
- AngularJS/HTML/Bootstrap元素用于动态搜索结果
- 在元素列表中搜索给定字符串
- jQuery-在数组中搜索类似的元素
- AJAX搜索2个元素
- jQuery递归搜索类的父元素
- 如何重置搜索表单中的特定表单元素
- 使用数据表,如何在要搜索的
中指定元素 - 自动完成搜索无法正常工作,请不要迭代$中的所有元素.每个ul-li都会及时显示响应
- Angular JS根据搜索结果和点击事件更新DOM元素
- 如何在不使用任何 html 输入/搜索元素的情况下读取本地客户端文本文件
- 在元素中搜索字符串,然后将其放入条件语句中
- 当我单击chrome的输入类型=搜索元素上的X时,是否触发了任何事件
- 如何通过搜索innerHTML的内容来获取HTML元素
- 增加在选择元素HTML中搜索的时间
- 使用DOM树中的某种节点号进行元素搜索
- 隐藏Google自定义搜索元素API 2.0的搜索引擎ID
- JQuery 在渲染后搜索 dom 元素,并用其相应的值替换键
- 如何获得下一个兄弟的值,如果元素搜索特定的字符串
- 如何在鼠标悬停时将焦点设置为输入元素(搜索框)
- 我怎样才能得到这个link元素?总是显示“无法找到带有链接文本的元素”==“搜索”