首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Selenium:在div中单击- div

Selenium:在div中单击- div
EN

Stack Overflow用户
提问于 2013-03-19 15:34:37
回答 3查看 3.8K关注 0票数 0

我有这个:

代码语言:javascript
复制
<div class="dhx_toolbar_btn def" title="">
<div>Interface</div>
</div>

我想知道我如何让Selenium点击它,因为我尝试了这样的方法:

代码语言:javascript
复制
//div[@class='dhx_toolbar_btn def' and contains(., 'Interface')]

这是:

代码语言:javascript
复制
css=.dhx_toolbar_btn def:contains('Interface')

但这两种方法似乎都不起作用,但它似乎适用于其他类似于以下情况的div:

代码语言:javascript
复制
<td class="td_btn_txt">
<div class="btn_sel_text">Billing Interface</div>
</td>

任何帮助都是非常感谢的。谢谢

**编辑**

我也尝试过这些,但都不起作用,也不返回任何错误:

代码语言:javascript
复制
//div[5]/div/div[5]/div[9]
//*[text()='Interface']
//*[normalize-space(text())='Interface']
//*[contains(text(), 'Interface')]

**编辑**

我还注意到,当我尝试最后一个4时,使用mouseDown而不是单击,它完全可以完成它应该做的事情(让它看起来像鼠标在项目上,而不是单击它),所以我想知道为什么它会做它对mouseDown的意义,但单击它什么也不做,甚至不返回一个错误。

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2013-03-21 14:06:45

好吧,不完全是我想要的方式,或者让它发挥作用,但它确实是这样的:

代码语言:javascript
复制
<tr>
<td>waitForElementPresent</td>
<td>//div[@class='dhx_toolbar_btn def' and contains(., 'Interface')]</td>
<td></td>
</tr>
<tr>
<td>mouseDown</td>
<td>//*[text()='Interface']</td>
<td></td>
</tr>
<tr>
<td>mouseOver</td>
<td>//*[normalize-space(text())='Interface']</td>
<td></td>
</tr>
<tr>
<td>mouseDown</td>
<td>//*[text()='Interface']</td>
<td></td>
</tr>
<tr>
<td>click</td>
<td>//div[5]/div/div[5]/div[9]</td>
<td></td>
</tr>
<tr>
<td>mouseOut</td>
<td>//div[5]/div/div[5]/div[9]</td>
<td></td>
</tr>

虽然我更喜欢一种更简单更简单的方法。

票数 0
EN

Stack Overflow用户

发布于 2013-03-19 15:38:53

尝试使用元件定位器的CSS选择器选项

就像这样

代码语言:javascript
复制
css = "div.dhx_toolbar_btn div"

当然,这取决于整个DOM的外观。

票数 1
EN

Stack Overflow用户

发布于 2013-03-19 17:00:12

尝试xpath:

代码语言:javascript
复制
//div[@class=\"dhx_toolbar_btn def\"]/div

xpath将使用文本"Interface“作为div。如果div中有多个带有"dhx_toolbar_btn“类的div,那么执行

代码语言:javascript
复制
//div[@class=\"dhx_toolbar_btn def\"]/div[text()="Interface"]

如果您有多个包含“Interface”的div,我将以编程的方式构造Xpath,并传递您要寻找的确切文本,假设文本是静态的。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/15503796

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档