为什么相同的javascript可以使用runscript命令运行,但不能在RC中的getEval中运行

时间:2012-03-27 09:26:57

标签: javascript selenium-rc

string str = "var temp = window.document.getElementById('ctl00_PageContentPlaceHolder_Manager');temp.style.display = 'inline';";
str += "temp.add(new Option('111', '222'));";
str += "temp.nextSibling.childNodes[1].innerHTML = '<I></I><SPAN></SPAN>Edit Manager Contact';";
//selenium.RunScript(str);
selenium.GetEval(str);

跟踪错误日志以查看,似乎"temp.add(new Option('111', '222'));";语句在getEval命令下无效。错误显示:

  

“拒绝访问财产”

除了与这两个命令不同的上下文之外。为什么呢?

1 个答案:

答案 0 :(得分:2)

Runscript在相同的范围内运行脚本,但GetEval需要str并尝试在不同的范围内运行它。如果问题出在temp.add语句中,我想这是因为Option执行时GetEval的定义不在范围内。