无法使用 selenium webdriver 的 gettext() 从文本框中读取文本?
选择日期后,我无法从 ajax 日历控件中读取日期
I can't read dates from ajax calendar control after date selection
http://www.asp.net/ajaxLibrary/AjaxControlToolkitSampleSite/Calendar/日历.aspx
我没有收到任何错误,但我无法从文本框中获取任何值.
I don't get any error but I can't fetch any value from textbox.
public static void main(String[] args) throws InterruptedException {
WebDriver driver = new FirefoxDriver();
driver.get("http://www.asp.net/ajaxLibrary/AjaxControlToolkitSampleSite/Calendar/Calendar.aspx");
driver.manage().window().maximize();
//Default calendar:
driver.findElement(By.xpath("//*[@id='ctl00_SampleContent_Date1']")).click();
for(int i=0;i<=5;i++){
for(int j = 0;j<=6;j++){
System.out.print(driver.findElement(By.xpath("//*[@id='ctl00_SampleContent_defaultCalendarExtender_day_"+i+"_"+j+"']")).getText()+"-");
}
System.out.println();
}
driver.findElement(By.xpath("//*[@id='ctl00_SampleContent_defaultCalendarExtender_day_3_4']")).click();
System.out.println(driver.findElement(By.xpath("//*[@id='ctl00_SampleContent_Date1']")).getText());
//Calendar with an associated button:
System.out.println("Calendar with an associated button:------------------------------------------------------");
driver.findElement(By.xpath("//*[@id='ctl00_SampleContent_Image1']")).click();
for(int i=0;i<=5;i++){
for(int j = 0;j<=6;j++){
System.out.print(driver.findElement(By.xpath("//*[@id='ctl00_SampleContent_calendarButtonExtender_day_"+i+"_"+j+"']")).getText()+"-");
}
System.out.println();
}
Thread.sleep(5000L);
driver.findElement(By.xpath("//*[@id='ctl00_SampleContent_Image1']")).click();
driver.findElement(By.xpath("//*[@id='ctl00_SampleContent_calendarButtonExtender_day_3_3']")).click();
System.out.println(driver.findElement(By.xpath("//*[@id='ctl00_SampleContent_Date5']")).getText());
}
推荐答案
获取 input
文本的调用应该是:
The call to get the input
text should be:
driver.findElement(By.id("ctl00_SampleContent_Date5")).getAttribute("value");
别问我为什么,就是这样一直是.通过键入 input
元素,您正在更改其 value
属性.
Don't ask me why, it's just the way it always has been. By typing into an input
element, you are changing its value
attribute.
相关文章