我需要在我的一个单元测试中为selectList添加一个新选项,我无法弄清楚如何去做。
Dropdown目前有2个选项,我想添加第三个选项,然后使用它。
我尝试使用http://stevenharman.net/blog/archive/2007/07/10/add-option-elements-to-a-select-list-with-javascript.aspx作为基础进行JavaScript注入,但失败了。我得到了每次都崩溃IE浏览器的异常,并且“RunScript failed”文本被打印到我的日志中,即使我在错误输出中没有使用该文本。
Watin可以吗?或者开源是否使我失败?
答案 0 :(得分:0)
使用您提供的链接中的代码,只需进行一项小改动即可实现。
我的更改
“新选项”作为最后一项添加到下拉列表中,它是所选项目。
string js = "";
js = js + "var theSelectList = document.getElementById('myDropDownID'); ";
js = js + " AddSelectOption(theSelectList, \"My Option\", \"123\", true);";
js = js + " function AddSelectOption(selectObj, text, value, isSelected) ";
js = js + "{";
js = js + " if (selectObj != null && selectObj.options != null)";
js = js + "{";
js = js + " selectObj.options[selectObj.options.length] = new Option(text, value, false, isSelected);";
js = js + "}}";
myIE.Document.Eval(js);
我的设置
检查下拉列表中有1个条目和2个条目;两种情况都添加了“我的选项”而没有问题。