如何使用 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 日期选择器的唯一方法是通过 java脚本命令
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 脚本命令格式化一个字符串,然后 运行 运行Script 方法只执行脚本。希望这对以后 运行 参与其中的任何未来 BAT 开发人员有所帮助。
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 日期选择器的唯一方法是通过 java脚本命令
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 脚本命令格式化一个字符串,然后 运行 运行Script 方法只执行脚本。希望这对以后 运行 参与其中的任何未来 BAT 开发人员有所帮助。