c#/ selenium中的日期选择器

时间:2016-08-22 10:50:49

标签: c# selenium-webdriver

我的网站上的日历控件中有一个日期单元格,代码如下

<td class=calendar-day" is="null"><a id="8-29" class="calendar-day-link" data-date="2016-08-29" aria-selected="false" title="August 29,2016" is="null">

我需要一种方法,我指定一个字符串,例如“8-21”,然后循环遍历日历中的所有值,并选择匹配“8-21”并点击

的那个

这是我尝试失败的方法

IWebElement option = DriverContext.Driver.FindElement(By.ClassName("calendar-day-‌​link"), 5);
List<IWebElement> Links = new List<IWebElement>(DriverContext.Driver.FindElements(By.Class‌​Name("calendar-day-l‌​ink"), 5));
    for (int k = 0; k < Links.Count; k++)
    {
        if (Links[k].Text == date)
        {
            option = Links[k];
        }
    }
option.Click();

1 个答案:

答案 0 :(得分:0)

在您的html代码中,锚标记包含日期作为其ID。您可以直接使用所需日期并使用cssSelector从日历中单击日期。试试下面的代码

IWebElement option = DriverContext.Driver.FindElement(By.CssSelector("a#"+date), 5);
option.Click();