java - Webdriver : Unable to enter value inside nested iframe, 框架集和框架

标签 java selenium selenium-webdriver

我使用 selenium 和 java 开发了脚本,并面临无法在框架中输入值的问题。

请在这方面协助我。

HTML snippet:

<html>
<head>
<frameset>
<frame name ='test'...>
<html>
<head>
<body>
<form>
<div>
     <iframe name ='test1'..>
	<html>
	<head>
	    <frameset name='MainContainer'..>
		   <frame name ='General' ..>
			<div> .....</div>
		   <frame name ='GlobalOptions' ..>
			<input name="scr" type="textbox" size="9" maxLength="8"/>
		  <frameset name='Container'..>
			<frame name ='Gen' ..>
			<div> .....</div>
			<frame name ='Glo' ..>
			<div> .....</div>
</div>
</form>
</body>
...
</html>

最佳答案

你的框架结构如此复杂。我认为使用JavascriptExecutor更好。试试这个代码:

((JavascriptExecutor) driver).executeScript("document.getElementsByName('scr').item(0).value = 'new text';");

关于java - Webdriver : Unable to enter value inside nested iframe, 框架集和框架,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37179072/

相关文章:

java - 根据用户 TextField 和 JComboBox 输入将节点附加到 Parent

java - IP程序,将对象设置为默认值

Selenium:指向默认 Chrome session

java - 如何使用 selenium (Java) 同时支持旧版本和新版本的 Firefox

python - 使用 python selenium 从 HTML 页面中选择项目

javascript - 如何在 webdriverjs 中等待 takeScreenshot 截取屏幕截图

python - 减小 pyinstaller exe 的大小

java - 为什么代码在整数长度程序中跳过 for 循环

java - 列 "file"的类型为 oid,但表达式的类型为 byte

java - 尽管有 --no-sandbox 选项,Chromedriver 不会以 root 身份运行