首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Selenium C#如何在类中选择动态li id列表中的元素

Selenium C#如何在类中选择动态li id列表中的元素
EN

Stack Overflow用户
提问于 2012-09-20 19:45:29
回答 1查看 4.5K关注 0票数 2
代码语言:javascript
复制
<ul class="cartItems">
  <li id="ba464302-4733-4a06-80af-44e315d98bc9" class="cartItem">
      <div class="thumbContainer">
           <span class="transferLinks">
     <a href="javascript:;" class="saveForLater">Save for later </a>

  <li id="199e3fff-f80c-4df4-a4ff-26edd804ee5c" class="cartItem">
  <div class="thumbContainer">
           <span class="transferLinks">
    <a href="javascript:;" class="saveForLater">Save for later </a>

我试图单独选择位于动态"li id“列表中的"saveForLater”类的所有元素(例如:0F347571a5-406c-49da-ac1f-37cf9a2628b),该元素位于封闭代码中的"ul类“"cartItems”中。我尝试了以下代码

  1. IWebElement cartItemByXpath = Driver.FindElement(By.XPath("//*[@class='cartItems']/li"));
  2. IWebElement cartItems = Driver.FindElement(By.CssSelector(".cartItems .cartItem .actionLinks .saveForLater"));

上面的第1行只返回cartItems下的所有文本,而不是我在上面寻找的第2行将选择saveForLater类的"li id“,但我仍然需要进入列表中其他"li id”下的saveForLater类的其余部分。“李id”是动态的,是价值的变化。如有任何意见,将不胜感激。

EN

回答 1

Stack Overflow用户

发布于 2012-12-13 07:17:52

使用Driver.FindElements获取所有匹配的元素列表,然后根据需要循环遍历该列表。

代码语言:javascript
复制
IList<IWebElement> cartItems = Driver.FindElements(By.CssSelector(".cartItems .cartItem .actionLinks .saveForLater"));

foreach (IWebElement cartItem in cartItems ) {
//your action on individual "cartItem"

}

希望这能帮上忙。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/12519818

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档