繁体   English   中英

如何在ExtJS弹出窗口中找到元素

[英]How to locate an element in a ExtJS pop window

被测系统使用ExtJS框架创建动态页面。

场景是当用户单击主浏览器页面上的按钮时,出现一个弹出窗口,我想在此子窗口的文本字段中输入文本。

我找到的唯一元素是外框,然后我尝试使用它来定位所需的文本框,但是失败了。

元素代码

输入type =“ text” size =“ 16” autocomplete =“ off” id =“ name” name =“ name” class =“ x-表单文本x-form-field x-form-invalid x-form-focus” style =“ width:233px;”

我试过下面的代码:

            WebElement parentObj = getDriver().findElement(
            By.cssSelector("#parentObj "));

            WebElement newObj = parentObj.findElement(
            By.xpath("//input[@id='name']"));
            newObj.click();
            newObj.sendKeys("Text to enter");

谁能在子extJS屏幕中帮助映射元素?

谢谢!

也许您应该尽可能地坚持使用CSS选择器:

parentObj.findElement(By.cssSelector('input[name="name"]'));

如果您的弹出窗口位于iframe内,则需要先切换到该iframe。

使用下面的代码切换到iframe,然后您可以使用现有的选择器。

var iframe = driver.findElement(By.TagName("iframe"));
driver.SwitchTo().Frame(iframe);


WebElement parentObj = driver.findElement(By.cssSelector("#parentObj "));

WebElement newObj = parentObj.findElement(By.xpath("//input[@id='name']"));
newObj.click();
newObj.sendKeys("Text to enter");

暂无
暂无

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

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