Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/312.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/selenium/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
按类名C#Selenium webdriver查找元素_C#_Selenium_Xpath - Fatal编程技术网

按类名C#Selenium webdriver查找元素

按类名C#Selenium webdriver查找元素,c#,selenium,xpath,C#,Selenium,Xpath,我是C#的新手,我想通过元素的类名来获取它们。我找到了使用Xpath的方法,但我确信有更优雅、更合适的解决方案 首先我“抓取”表,然后通过Xpath查找元素。我想做的是定义一行。例如entireRow并通过它将不同类型的元素分配为两个和。如果元素带有类“devColorLower”,+=devColorLower值,如果元素带有类“devColorUpper”,++devColorUpper值 这是我使用的代码 // Grab the table var tbody1 = driver.Find

我是C#的新手,我想通过元素的类名来获取它们。我找到了使用Xpath的方法,但我确信有更优雅、更合适的解决方案

首先我“抓取”表,然后通过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']"));
}

我已经得出结论了。我添加了第二个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}