Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jsf-2/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Selenium webdriver 如何使用selenium webdriver在覆盖中输入文本_Selenium Webdriver - Fatal编程技术网

Selenium webdriver 如何使用selenium webdriver在覆盖中输入文本

Selenium webdriver 如何使用selenium webdriver在覆盖中输入文本,selenium-webdriver,Selenium Webdriver,我试图在一个覆盖文本字段中输入文本,该字段在单击下拉选项后出现。但是代码没有集中到覆盖窗口,我无法在字段中输入任何文本。 下面是将打开新弹出窗口的下拉选项的HTML代码: <a href="#" objrid onclick="setTimeout(function() {YAHOO.action.flyers.tile87.hide();}, 0);openDialog('tile87_dialog', 'tileId=null&lineId=0&columnName

我试图在一个覆盖文本字段中输入文本,该字段在单击下拉选项后出现。但是代码没有集中到覆盖窗口,我无法在字段中输入任何文本。 下面是将打开新弹出窗口的下拉选项的HTML代码:

<a href="#" objrid onclick="setTimeout(function() 
{YAHOO.action.flyers.tile87.hide();}, 0);openDialog('tile87_dialog', 
'tileId=null&lineId=0&columnName=ItemSheet&S_moduleContextId=cat', 'Ok', 
'Cancel', '', event);stopEventPropagation(event);; return false;" 
class="yuimenuitemlabel">
注意:当我手动选中此项时,焦点自动设置在覆盖的文本字段上。但在通过代码做同样的事情时,它不是将焦点设置在文本字段上吗

任何关于如何做到这一点的提示都会很有帮助

问候,


Krutika

当你问问题时,你必须分享完整的html代码。否则,帮助您将很困难。
我将尝试这样做,但我没有这方面的完整信息。
例如,您的代码必须如下所示:

//1. Initialization of driver
driver = new ChromeDriver(); 
//2. Get needed URL 
driver.get("http://someUrl");  
//3. Click this element will open alert  
driver.findElement(By.className("yuimenuitemlabel")).click();  
//4. Waiting for full rendering alert
try {  
    Thread.sleep(3000);  
} catch (InterruptedException e) {  
    e.printStackTrace();  
}  
//5. Enter needed text
driver.switchTo().alert().sendKeys("the text you needed");  

这个叠加弹出窗口是否存在于框架内/您可以添加您尝试过的代码吗?是的,我已将其添加到我的帖子中。该下拉选项位于框架内。但这个覆盖层不在框架内。是的,我试过使用警报。但我得到了错误信息,称为“未找到警报”。
//1. Initialization of driver
driver = new ChromeDriver(); 
//2. Get needed URL 
driver.get("http://someUrl");  
//3. Click this element will open alert  
driver.findElement(By.className("yuimenuitemlabel")).click();  
//4. Waiting for full rendering alert
try {  
    Thread.sleep(3000);  
} catch (InterruptedException e) {  
    e.printStackTrace();  
}  
//5. Enter needed text
driver.switchTo().alert().sendKeys("the text you needed");