如何从列表中选择下拉列表,但HTML没有使用Selenium Java的SELECT标记
我是Selenium的新手,我想执行一个简单的任务,我想从选项卡中选择一个下拉列表,并且我使用了"http://www.spicejet.com/"作为参考。 在网页spicejet.com中有一个选项卡"Add-On",它包含下拉值,我想从列表中选择任何一个值。 HTML代码没有SELECT标记,因此选择类没有给我适当的结果。
以下是HTML代码:
<a href="javascript:void(0);" id="highlight-addons" class="">Add-Ons<span class="rightarrowclass"> </span><span class="rightarrowclass"> </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>
请告诉我如何前进。
解决方案
要从DropDown
中选择值,必须先Mouse Hover
WebElement
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;
}
}
相关文章