xpath - 在 Selenium IDE 中单击包含部分 id 和标题的 XPath 按钮

标签 xpath selenium selenium-ide

使用 Selenium IDE,我尝试使用带有部分 id 和元素标题的 XPath 单击网页上表格内的按钮。我使用的 XPath 是:

xpath=//*[contains(@id, 'ctl00_btnAircraftMapCell')]//*[contains(@title, 'Select Seat')] 

这就是我尝试单击的按钮示例的完整 html 代码:

<li id="ctl00_MainContent_repAircraftMap_ctl20_repAircraftMapRow‌​_ctl00_liAircraftMap‌​Cell" class=""> 
    <a id="ctl00_MainContent_repAircraftMap_ctl20_repAircraftMapRow‌​_ctl00_btnAircraftMa‌​pCell" href="javascript:void(0)" seatnumber="20A" mapbindattribute="1124" title="Select Seat 20A" onclick="SeatClick(1124);"></a> 
</li>

我的构造是否错误?它不起作用!

最佳答案

现在您已经提供了 HTML 示例,我们可以看到您的 XPath 略有错误。虽然它是有效的 XPath,但它在逻辑上是错误的。

你有:

//*[contains(@id, 'ctl00_btnAircraftMapCell')]//*[contains(@title, 'Select Seat')]

翻译为:

获取所有具有 ID 的元素其中包含 ctl00_btnAircraftMapCell 。从这些元素中,获取具有 title任何子元素其中包含 Select Seat .

真正想要的是:

//a[contains(@id, 'ctl00_btnAircraftMapCell') and contains(@title, 'Select Seat')]

翻译为:

获取所有具有两者 anchor 元素:an id其中包含 ctl00_btnAircraftMapCell和一个 title其中包含 Select Seat .

关于xpath - 在 Selenium IDE 中单击包含部分 id 和标题的 XPath 按钮,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15930683/

相关文章:

xpath - 为什么 xmlstarlet 不选择所有节点?

xml - 根据另一个值获取一个值

xml - 用于计算 XML 元素中属性数量的 XPath

java - 如何在每个循环实例的新行中将数据写入Excel工作表而不替换以前的数据,即如何为每个循环实例追加行?

java - 如何从 selenium java 中的 Web 元素中提取 XPATH 或 CSSPath

java - Selenium WebDriver 在选择 xpath 时抛出错误

python - python调用CNBC后端API

java - 网格 : How to make hub password protected

selenium - 如何使用 Selenium 在测试之间存储值

selenium - 如何在 Selenium 中单击 <a> 标签