使用Selenium,当JQuery UI似乎使Web元素的内容“不可读”时,如何阅读基于JQuery的页面中的内容?

时间:2016-02-19 21:52:02

标签: javascript jquery selenium

我正在研究JQuery向导类型的应用程序。它是一个CRUD应用程序,当我想要“编辑”应用程序中的一个对象时,启动向导,向导的所有页面都填充了输入的数据。

我正要开始使用Firebug / Firepath识别页面上的元素的任务,并惊恐地发现,尽管文本在我使用XPATH定位器成功找到的元素I中可见,但是没有文本在HTML。

这是定位器的类型// div [@ class ='stepContainer'] // td [@ class ='DataTD'] //输入[@ id ='myElementId'],在DOM中检查并获取我的使用Firebug控制台弄脏并尝试获取innerHTML都返回空。

我不确定开发人员在这里做了什么来实现这一目标,但这会让我的自动化工作陷入危险之中,但必须有办法。

我对JQuery比较陌生,但对Selenium有一些很好的经验。

提前致谢。

2 个答案:

答案 0 :(得分:0)

为了在文本框中获取文本,您必须获取属性" value"。请参阅以下Java代码:

WebElement txtbox = driver.findElement(By.xpath("//div[@class='stepContainer']//td[@class='DataTD']//input[@id='myElementId']"));
string text = txtbox.getAttribute("value");

答案 1 :(得分:0)

请试试这个

String OutText=Driver.findElement(By.Id("myElementId")).getText();