一尘不染

我想从列表中选择一个DropDown,但是HTML没有选择标签,我不确定我应该使用Select类还是其他类。

selenium

我是selenium的新手,我想执行一个简单的任务,我想从选项卡中选择一个下拉菜单,并且我已使用“
http://www.spicejet.com/
”作为参考。网页spicejet.com中有一个“附加”标签,其中包含“下拉”值,我想从列表中选择任意一个值。HTML代码没有select标记,因此Select类没有给我适当的结果。

这是HTML代码:

<a href="javascript:void(0);" id="highlight-addons" class="">Add-Ons<span class="rightarrowclass">&nbsp;</span><span class="rightarrowclass">&nbsp;</span></a>
<li><a href="SpiceClubMembershipOffer.aspx">SpiceClub Membership Offer</a></li>
<li id="ctl00_lblSpiceClublink">
                                                <a id="ctl00_lblSpiceClub" href='javascript:WebForm_DoPostBackWithOptions(new WebForm_PostBackOptions("ctl00$lblSpiceClub", "", false, "", "SpiceClub.aspx", false, true))'>SpiceCash/SpiceClub</a></li>
<li><a href="http://book.spicejet.com/SpiceMoneyTopup.aspx">SpiceCash Topup </a></li>
<a href="http://book.spicejet.com/RetrieveBooking.aspx?AddSeat=true">SpiceMax </a>

请帮助我,让我知道如何前进。


阅读 333

收藏
2020-06-26

共1个答案

一尘不染

要选择从一个值DropDown,你必须先 Mouse HoverWebElement ADD-ONS ,然后选择
SpiceClub Membership Offer 您可以使用下面的代码块:

WebElement elem = driver.findElement(By.xpath("//a[@id='highlight-addons']"));
Actions action = new Actions(driver);
action.moveToElement(elem).perform();
List<WebElement> items = driver.findElements(By.xpath("//ul[@class='add-ons-tab']/li/a"));
for(WebElement myitem:items)
{
    if(myitem.getAttribute("innerHTML").contains("Membership"))
    {
        myitem.click();
        break;
    }
}
2020-06-26