C#实现自动填表

如果有个如下index.tml文档:
<html>
<body>
<FORM name="f"    action="http://www.baidu.com/s?wd=">
<INPUT id="kw" name="wd" >
<INPUT id="sb" value="搜索" type="submit">
</FORM>
</body>
</html>

代码实现:
            窗体装载事件中写入后面这条语句:   webBrowser1.Navigate(@"*:\*\index.html");

            在webBrowser1_DocumentCompleted事件或按钮事件中写入下面语句:
            HtmlDocument doc = webBrowser1.Document; //获取document对象
            HtmlElement btn = null;
            foreach (HtmlElement em in doc.All) //轮循
            {
                string str = em.Id;
                                if ((str == "kw") || str == "sb") //减少处理
                {
                    switch (str)
                    {
                        case "kw": em.SetAttribute("value", "自动填表"); break; //填表
                        case "sb": btn = em; break;
                        default: break;
                    }
                }
            }
            webBrowser1.Document.All["sb"].InvokeMember("Click");//提交 , 或 下面语句
            //btn.InvokeMember("click"); //触发submit事件
            //因为submit不是C#提供的常用的已注册事件,所以不能够通过RaiseEvent直接调用。
            //通过AttachEventHandler("submit",new EventHandler(fun))给form添加事件处理函数fun,
            //然后在fun中用InvokeMember方法调用页面中的响应函数,不过这样可能就不能
            //submit页面到form的action定义的url了

转载于:https://www.cnblogs.com/ssda/archive/2009/06/10/1500876.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值