从html代码我无法获得selenium c#
中的编辑按钮<button class="pt-buttonbase pt-button pt-bordered pt-icon-and-text" data-iconurl="../content/icons/Edit.png" data-bind="click: $root.editTemplate" data-toolkit="button">
答案 0 :(得分:1)
询问开发人员是否给该按钮一个唯一的ID。然后按ID搜索。
答案 1 :(得分:0)
不知道你尝试了什么,没试过,我会建议xpath。假设您有一个WebDriver变量Driver
:
WebElement EditButton = Driver.FindElement(
By.XPath("//button[@data-iconurl='../content/icons/Edit.png']"));
答案 2 :(得分:0)
如果你能提供一些HTML,它会更好。请注意,当您使用带有 class 的XPath时 - 您将收到符合您条件的第一个元素。即使它是正确的 - 你将得到不需要的按钮。在这种情况下,使用索引,例如[1]。
答案 3 :(得分:0)
我喜欢使用CssSelector:
您可能不需要使用所有4个类名,但这将起作用:
By.CssSelector(".pt-buttonbase.pt-button.pt-bordered.pt-icon-and-text"));
您可以随时在浏览器控制台中查看使用JQuery查看类是否是唯一的:
$(".pt-buttonbase")
如果那不是唯一的,你可以继续添加其他类名,直到你只得到一个对象作为回应。