在以下 HTML 中,我需要使用 Selenium Webdriver 获取登录值。

<div
   roletitle="MD"
   careteamrole="HOSPITALIST"
   login="adamss"
   isconsultctm=""
   title="Adams Samuel"
   style=""
   class="assign_grid assign_grid_selected"
   id="97">
</div>

我尝试了以下方法,但失败了:-
WebElement getAssigneeLoginWebElement = ieDriver.findElement(By.cssSelector(".assign_grid assign_grid_selected"));

sAssignedCTMLoginId = getAssigneeLoginWebElement.getAttribute("login");


sAssignedCTMLoginId = ieDriver.findElement(By.className("assign_grid assign_grid_selected")).getAttribute("login");


sAssignedCTMLoginId = ieDriver.findElement(By.xpath("//*[@class='assign_grid assign_grid_selected']/@login[1]")).getText();

先感谢您

最佳答案

ieDriver.findElement(By.xpath("//div[@class='assign_grid assign_grid_selected']")).getAttribute("login");

我还会检查以确保您使用的定位器只带回一个元素,而不是更多 - 要检查这一点,请使用 .findElements 运行相同的操作并验证仅返回一个结果。

HTML 中存在隐藏元素是很常见的,您的定位器可能会找到它们。

10-06 08:00