当前位置: 首页 > 面试题库 >

无法使用硒Webdriver的gettext()从文本框中读取文本?

仰翰采
2023-03-14
问题内容

选择日期后,我无法从Ajax日历控件中读取日期

http://www.asp.net/ajaxLibrary/AjaxControlToolkitSampleSite/Calendar/Calendar.aspx

我没有收到任何错误,但无法从文本框中获取任何值。

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文本的调用应为:

driver.findElement(By.id("ctl00_SampleContent_Date5")).getAttribute("value");

不要问我为什么,这只是它的方式一直都是。通过输入input元素,您可以更改其value属性。



 类似资料:
  • 问题内容: 选择日期后,我无法从Ajax日历控件中读取日期 http://www.asp.net/ajaxLibrary/AjaxControlToolkitSampleSite/Calendar/Calendar.aspx 我没有收到任何错误,但无法从文本框中获取任何值。 问题答案: 获取文本的调用应为: 不要问我为什么,这只是它的方式一直都是。通过输入元素,您可以更改其属性。

  • 问题内容: 我在用Java编写Webdriver测试时试图从textarea读取文本。由于某些原因,我在使用时返回null : 我该如何解决? 问题答案: 我得到了这个工作。这是解决方案- 我在我以前发布的代码示例中的textarea中使用了实际值,这有点愚蠢。谢谢大家帮助

  • 我正在使用下面的python代码从文本框中提取文本 我的HTML(我正在提取文本的网页) 实际上,文本框将包含TRUE或false。我想把它摘录几千页。

  • 我正在使用java使用Selenium在2个文本框中输入文本。我可以在第一个文本框中输入文本,但在第二个文本框中,我不断得到元素不可见异常 HTML代码。。 Java代码。。 错误: 组织。openqa。硒。ElementNotVisibleException:元素当前不可见,因此可能无法与命令持续时间或超时交互:19毫秒生成信息:版本:“2.53.1”,版本:“a36b8b1”,时间:“2016

  • 我无法在这个网站上找到所有的文字——https://niftygateway.com/marketplace 使用这个简单的代码-

  • 我正在尝试使用webdriver从上面的html代码中获取动态跨度文本,但得到的是: org.openqa.selenium.nosuchelementException:找不到元素:{“method”:“id”,“selector”:“MathQ2”} 我需要从span id“MathQ2”获取文本:“6+4=” 此文本“6+4=”在每次刷新页面或加载新页面时都在更改 我尝试过xpath、id、