Selenium Javascript不会检索值

时间:2012-04-09 19:34:34

标签: c# asp.net visual-studio-2010 dom selenium

我正在编写一个使用Selenium WebDriver检索另一页上输入内容的网页。

这是我要从以下网址检索信息的页面上的输入字段:

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

这是在我要从中检索信息的页面上分配输入的脚本:

$('#ReviewProposal_OwnerName').val(data.Owner1); 

在使用我的驱动程序导航到页面后,为了检索该值,我写道:

 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;

输出是我写的页面上的div。

然而即使文本显示在页面的输入字段中,当我尝试通过我的代码检索它时,我总是得到一个空字符串。如果我查看firebug中的输入字段,即使调试器中的值标记为空白,文本也会显示在浏览器中。我做错了什么?

1 个答案:

答案 0 :(得分:0)

也许是因为您的输入是只读的,而jQuery无法设置其值。