2016-06-07 36 views
1
InvalidElementState An element command could not be completed because the element is in an invalid state (e.g. attempting to click a disabled element). 
     invalid element state: Element must be user-editable in order to clear it. 

(Session info: chrome=49.0.2623.75) (Driver info: chromedriver=2.21.371459 (36d3d07f660ff2bc1bf28a75d1cdabed0983e7c4),platform=Mac OS X 10.11.4 x86_64) (WARNING: The server did not provide any stacktrace information) [09:49:15]: ERROR Unknown Remote end send an unknown status code. RuntimeError: invalid element state: Element must be user-editable in order to clear it.webdriverio '的setValue' 來輸入字段拋出錯誤InvalidElement國家

截圖:

enter image description here

這種形式被使用jQuery文本選擇庫中實現。有沒有其他的方式來設置價值?

回答

2

在這種情況下,你應該在input場使用下面的方法來setValue: -

WebElement inputEl = driver.findElement(By.xpath("xPath exression")); 
inputEl.click(); 
inputEl.sendKeys(Keys.chord(Keys.CONTROL, "a"), Keys.DELETE, "valuet to set"); 

,如果你想使用JavascriptExecutor,請嘗試以下方法: -

JavascriptExecutor js = (JavascriptExecutor)driver; 
js.executeScript("arguments[0].click();arguments[0].value='';arguments[0].value=arguments[1];",inputEl,"valuet to set"); 

編輯..

您需要點擊設置值之前的元素才能啓用此功能input如果它消失..

希望這將幫助你... :)

+0

對於的SendKeys選項:不明錯誤\t在處理命令時出現未知的服務器端錯誤。 \t \t \t未知錯誤:無法對焦元素 (會話信息:鉻= 49.0.2623.75) (駕駛員信息:chromedriver = 2.21.371459(36d3d07f660ff2bc1bf28a75d1cdabed0983e7c4),平臺=的Mac OS X 10.11.4 x86_64的)(警告:服務器未提供任何堆棧跟蹤信息) [08:52:36]:錯誤\t未知\t遠程端發送未知狀態碼。 – Varam

+0

讓我試試第二個選項 - – Varam

+0

你能告訴我元素是否啓用,你想要設置值....作爲異常拋出....這意味着沒有對這個元素的焦點...你需要點擊在此元素之前設置的值.. –

相關問題