如何为以下HTML编写xpath
:
<span id="filename_548948">Test DC Email </span>
以下xpath似乎不起作用:
Driver.FindElement(By.XPath(".//span[text() = '" + nameOfEmail + "']")).Click();
答案 0 :(得分:0)
解决方案取决于字符串nameOfEmail包含的内容。
您有关于确切文本的xpath查询。这意味着搜索中的每个字符应与网页上的字符相同。
所以如果string nameOfEmail = "Test DC Email "
它会正常搜索。
此外,丢失.
前面的//
可能会有所帮助
答案 1 :(得分:0)
根据您分享的 HTML ,您可以使用以下xpath
:
//with a constant string
Driver.FindElement(By.XPath("//span[starts-with(@id,'filename_') and contains(normalize-space(), 'Test DC Email')]")).Click();
//with a variable string
Driver.FindElement(By.XPath("//span[starts-with(@id,'filename_') and contains(normalize-space(), '" + nameOfEmail + "')]")).Click();