Javascript 如何编辑HTML(删除只读)并使用JS Executor键入输入框?
这是特定页面上的一段HTML代码:Javascript 如何编辑HTML(删除只读)并使用JS Executor键入输入框?,javascript,html,selenium-webdriver,Javascript,Html,Selenium Webdriver,这是特定页面上的一段HTML代码: <input size="24" autocomplete="off" id="sch-555-et" name="./schimage" class="x-form-text x-form-field x-trigger-noedit" readonly="" style="width: 263px;" type="text"> 但它并没有删除“readonly”,元素仍然不可编辑 我也尝试过自动处理这个页面,但在这里它给出了一个错误 尝试
<input size="24" autocomplete="off" id="sch-555-et"
name="./schimage" class="x-form-text x-form-field
x-trigger-noedit" readonly="" style="width: 263px;" type="text">
但它并没有删除“readonly”,元素仍然不可编辑
我也尝试过自动处理这个页面,但在这里它给出了一个错误
尝试将readOnly的值设置为null时,无法将属性“readOnly”设置为null
尝试删除只读时无法读取null的属性“removeAttribute”
我正在使用Windows、Java、Selenium、Maven和TestNg您可以编辑
值
属性来模拟键入。即使存在readonly属性,这也会起作用。但如果确实要删除该属性,请使用
var el=document.getElementById('sch-555-et');
//注意:即使存在readonly属性,也可以编辑该值。
删除属性(“只读”);
el.value=‘已编辑’代码>
@down这个问题有什么问题吗,是格式问题?不必要的否决票会避开真实的回答。这可能是因为这是一个简单的JavaScript问题,包含在“我在使用Selenium”中。@wizzwizz4这显然不是一个JavaScript问题。这是一个关于如何编辑通过Selenium访问的DOM的问题。@DavidKnipe JavaScript Executor。。。执行JavaScript。正常的JavaScript。这可能是我想要的。一旦我使这个HTML能够接受文本,我将使用JSExecutor并开始键入。如何在Selenium脚本之间运行您的代码?
public JavascriptExecutor executeJS() {
JavascriptExecutor jsexec = (JavascriptExecutor).driver;
return jsexec;
}
executeJS().executeScript("document.getElementById('sch-555-et').removeAttribute('readonly')");