如何查找具有相同 span 类的元素



在表中有多个这样的元素:<span class="currency"> 0</span> .> 0

<td class="alignLeft label">Initial</td>
<td class="alignRight readOnly">
<span class="currency"> 0</span>
</td>
<td></td>

另一个元素位于HTML的这一部分:

<td class="alignLeft label">Initial</td>
<td class="alignRight readOnly">
<span class="currency"> 0</span>
</td>
<td></td>
<td class="alignRight readOnly">
<span class="currency"> 0</span>
</td>
<td></td>

另一个在这里:

<td class="alignLeft label">Initial</td>
<td class="alignRight readOnly">
<span class="currency"> 0</span>
</td>
<td></td>
<td class="alignRight readOnly">
<span class="currency"> 0</span>
</td>
<td></td>
<td class="alignRight readOnly">
<span class="currency"> 0</span>
</td>

谢谢。

你需要做这样的事情:

// this will return a list containing all elements with the currency class
var currencyElements = driver.FindElements(By.ClassName("currency"));
foreach (var element in currencyElements)
{
    // access each individual element one by one
    if (element.Text == "0")
        // do something
}

这将返回具有货币类的所有元素。如果你想更具体一点,即:你只需要带有货币类的span元素,你需要使用OpenQA.Selenium.Support包并做一个ByAll

var byAll = new OpenQA.Selenium.Support.PageObjects.ByAll(new By[] 
            { 
                By.ClassName("currency"), 
                By.TagName("span") 
            });

或者只是在第一个例子中检查element.TagName

最新更新