2017-10-04 58 views
-3
<input id="actionQty_8445901" style="position:absolute" onclick="AddMeToCart(this)" type="checkbox"> 

選擇多個複選框硒IDE時,ID總是改變

<input id="actionQty_8445901" style="position:absolute" onclick="AddMeToCart(this)" type="checkbox"> 

'//input[starts-with(@id,'actionQty_')][1]' 

正在嘗試這一點,但它的工作一個複選框僅

enter image description here

回答

0

您可以使用此XPath來選擇多個複選框

//input[contains(@id,'actionQty')] 

並且還使用findElements()方法來選擇它

List<WebElement> checkElements= driver.findElements(By.xpath("//input[contains(@id,'actionQty')]")); 

    for (WebElement check_elem: checkElements) { 
      check_elem.click(); 

    } 
0

的XPath元素將會像

//input[starts-with(@id, 'actionQty_')] 

,那麼你需要找到複選框的號碼,並點擊元素withinloop 然後你就可以得到所有的複選框

List<WebElement> allElements = driver.findElements(By.xpath(" //input[starts-with(@id, 'actionQty_')]")); 

    for (WebElement element: allElements) { 
      element.click(); 
    //do your operation 
    } 

希望它會工作

+0

看來你正確洛根。但他在IDE – iamsankalp89

+0

需要:)哎呀那麼它可能有助於未來遊客 – zsbappa

+1

是的,我有同樣的想法所以公佈答案 – iamsankalp89