如何通过C#中的onclick值访问html元素?

时间:2019-05-22 00:08:07

标签: c# html getelementbyid getelementsbytagname

我正在尝试编写一个机器人来读取或数据库化并填写在线HTML表单。 在此过程中,表单上有一个按钮需要单击以编辑在线表单。我需要使用C#单击它。该按钮在DOM资源管理器中如下所示:

DOM Explorer

如代码所示,该元素没有ID。 我已经尝试了以下代码,但都不起作用

HtmlElementCollection buttons = webBrowser1.Document.GetElementsByTagName("button");
        foreach (HtmlElement btn in buttons)
        {
            if (btn.InnerText != null)
            {
                if (btn.InnerText.Equals("Edit"))
                {

                    btn.InvokeMember("Click");
                    btn.RaiseEvent("onclick");
                }
            }

        }

我也尝试了以下方法;

HtmlElementCollection elements = webBrowser1.Document.GetElementsByTagName("button");
        HtmlElement wanted;

        foreach (HtmlElement item in elements)
        {
            if (item.GetAttribute("onclick") == "edit(this,'bss','fieldsurveyportal');")
            {
                wanted = item;
                break;
            }
        }

我不确定这是否可行! Az,当我计算webBrowser1.Document.GetElementsByTagName(“ button”)中的Button标记的数量时,它比DOM Explorer中的数量少很多

0 个答案:

没有答案