2012-07-11 40 views
4

我試圖獲得禁用的值(disabled="disabled"<input>字段,但它返回一個空字符串。Selenium WD - 獲取禁用的輸入值

我已經嘗試過:.TextGetAttribute("value")但是這一切都沒有工作到目前爲止。

回答

11

如果標籤是這樣的 -

<input disabled="true" id='data'> 

你的代碼應該是 -

WebElement.getAttribute("disabled") 

WebElement.getAttribute("id") 

確保你的代碼是正確的。如果這不起作用,請發佈您正在使用的HTML代碼。

對於此標記 -

<input id="j_idt93:j_idt93" type="text" disabled="disabled" maxlength="2000" value="Pārtraukts"> 

來獲取值屬性 -

String value = driver.findElement(By.id("j_idt93:j_idt93")).getAttribute("value"); 

值必須爲Pārtraukts

讓我知道,如果有任何問題。

如果不工作,你可能不得不使用JavaScript執行 -

String value = (String)((JavascriptExecutor) driver).executeScript("Java script query in here to return value",""); 

您的查詢應該是 -

return document.getElementById("j_idt93:j_idt93").getAttribute("value"); 
+0

HTML代碼是<輸入ID = 「j_idt93:j_idt93」 類型= 「text」disabled =「disabled」maxlength =「2000」value =「Pārtraukts」>我試圖獲取value屬性。 – andree 2012-07-11 10:05:14

+0

謝謝,JavascriptExecutor工作。 – andree 2012-07-11 12:13:25