2016-08-24 41 views
0

我试图禁用文本框,但它无法按预期工作。下面是我的代码如何在Selenium中禁用文本框

禁用命令:

JavascriptExecutor js = (JavascriptExecutor)driver; 
WebElement textbox = driver.findElement(By.id("textbox")); 
js.executeScript("arguments[0].setAttribute('disabled', '');", textbox); 

测试命令:

js.executeScript("arguments[0].setAttribute('value', 'Text Box Enalbled !! ');", textbox); 
+1

是什么类型'js'对象? –

+1

@Rudziankoŭ它是一个'JavascriptExecutor' –

回答

1

For disable text box,你需要设置,如下textboxtrue.disabled属性: -

JavascriptExecutor js = (JavascriptExecutor)driver; 
WebElement textbox = driver.findElement(By.id("textbox")); 
js.executeScript("arguments[0].disabled = true", textbox); 
+2

感谢这一个工作正常与我的测试代码 –

1
JavascriptExecutor javascript = (JavascriptExecutor) driver; 
String todisable = "document.getElementsById('textbox')[0].setAttribute('disabled', '');"; 
javascript.executeScript(todisable); 
1

要禁用JavaScript中,你可以做的文本框:

JavascriptExecutor js = (JavascriptExecutor)driver; 
js.executeScript("document.getElementById('textbox').setAttribute('disabled', '');"); 
+2

,也工作,谢谢 –