2012-04-09 2 views
0

Selenium WebDriver를 사용하여 다른 페이지의 입력 내용을 검색하는 웹 페이지를 작성하고 있습니다.Selenium Javascript가 값을 검색하지 않습니다.

$('#ReviewProposal_OwnerName').val(data.Owner1); 
: 나는에서 정보를 검색 할 페이지에 입력을 할당 스크립트

<input id="ReviewProposal_OwnerName" name="ReviewProposal.OwnerName" readonly="readonly" type="text" value="" /> 

이된다

내가에서 정보를 검색 할 페이지의 입력 필드입니다

IJavaScriptExecutor js = driver as IJavaScriptExecutor; 

IWebElement nameOfOwnerField = driver.FindElement(By.Id("ReviewProposal_OwnerName")); 

string title = (string)js.ExecuteScript("return $('#ReviewProposal_OwnerName').val();"); 
output.InnerText += title; 

OUTP :

내 드라이버가있는 페이지로 이동 한 후, 내가 쓴 값을 검색하려면 ut은 내가 작성한 페이지의 div입니다.

그러나 텍스트가 페이지의 입력 필드에 표시 되더라도 코드를 통해 검색하려고하면 항상 빈 문자열이 표시됩니다. 파이어 버그의 입력 필드를 보면 디버거의 값이 공백으로 표시 되더라도 텍스트가 브라우저에 표시됩니다. 내가 도대체 ​​뭘 잘못하고있는 겁니까?

+1

아직 webdriver에서 많이 사용하지는 않았지만'string title = driver.FindElement (By.Id ("ReviewProposal_OwnerName"))) .JavaScript를 사용하는 대신 GetAttribute ("value"); –

답변

0

입력이 읽기 전용이며 jQuery가 값을 설정할 수 없기 때문일 수 있습니다.

관련 문제