我是C#的新人,我试图通过他们的班级名字获得元素。我找到了一种使用Xpath的方法,但我确信它有更优雅和合适的解决方案。
首先我" m"抓住"表,然后我通过Xpath找到元素。我想要做的是定义一行。例如entireRow
并通过它将不同类型的元素分配到两个总和中。如果元素包含类"devColorLower"
,+=devColorLower
值,则元素包含类"devColorUpper"
,++devColorUpper
值。
这是我使用的代码。
// Grab the table
var tbody1 = driver.FindElements(By.XPath(".//*[@id='DataTableID']/tbody/tr"));
// Grab the color values
foreach (var row in tbody1)
{
var entireRow = row.FindElements(By.XPath(".//td"));
var shortfall = row.FindElements(By.XPath(".//td[@class='DataTableTD devColorLower']"));
var exceedence = row.FindElements(By.XPath(".//td[@class='DataTableTD devColorUpper']"));
}
答案 0 :(得分:0)
我已经达成了结论。我已经添加了第二个foreach周期
foreach (var cell in entireRow) // Defines a foreach cycle that check every cell in the row - entireRow
{
String cellClass = cell.GetAttribute("class"); // Gets the class
if (cellClass == ("DataTableTD devColorLower")) { ..code}