C#Web浏览器选择列表项单击

时间:2012-10-13 17:44:50

标签: c# select webbrowser-control

我正在尝试使用此方法从选择列表框中选择项目:

  var elements = webBrowser1.Document.GetElementsByTagName("select");



        foreach (HtmlElement element in elements)
        {

            if (element.GetAttribute("id")=="pagesize")
            {
                element.GetElementsByTagName("option")[2].SetAttribute("selected", "selected");
                webBrowser1.Document.InvokeMember("click");
            }
        }

来自这个HTML代码

<select name="pagesize" id="pagesize" onchange="changeFileListRequestSize();">
                <option value="10">10 files per page</option>
                <option value="25" selected="selected">25 files per page</option>
                <option value="50">50 files per page</option>
                <option value="100">100 files per page</option>
                <option value="200">200 files per page</option>
            </select>

项实际上是更改但是不执行onchange =“changeFileListRequestSize();” javascript事件。

如何模拟选择列表项单击或“更改”

2 个答案:

答案 0 :(得分:6)

document.GetElementById("pageSize").InvokeMember("onchange")

答案 1 :(得分:-1)

出色的工作

                if (elm.GetAttribute("className").Contains("iceSelOneMnu"))
                {
                    HtmlDocument doc = webBrowser1.Document;
                    elm.SetAttribute("value", "630676649");
                    elm.InvokeMember("onchange");
                }