繁体   English   中英

如何使用Selenium Web驱动程序C#在Telerik日期选择器文本框中输入日期字符串?

[英]How to input a date string into telerik date picker textbox using selenium web driver C#?

var dateTextBox = driver.FindElement(By.Id("ctl00_Content_TxtDateOfBirth_datePicker_dateInput"));

dateTextBox.Click();

dateTextBox.SendKeys(date);

driver.FindElement(By.Id("btnSave")).Click();

我有一个页面,其中有一个带有文本框的Telerik日期控件。 用户在文本框中输入日期,然后单击保存按钮。

由于某种原因,当我运行测试时,它将日期输入到文本框中,但是当保存时,它将清除日期控件的文本框,因此日期控件文本框中没有任何内容。

终于找到了答案。

确实,将值输入到Telerik RAD日期选择器中的唯一方法是通过javascript命令

public void runScript(IWebDriver driver, String script)
{
    IJavaScriptExecutor js = driver as IJavaScriptExecutor;
    js.ExecuteScript(script);
}

public void setDatePicker(IWebDriver driver, String date, String Id)
{
    String script = string.Format("$find('{0}').set_selectedDate(new Date('{1}'))", Id, date);
    runScript(driver, script);
}

首先,我为Java脚本命令设置字符串格式,然后运行只执行脚本的runScript方法。 希望这对将来遇到此问题的任何BAT开发人员有所帮助。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM