Web浏览器操纵HTML表

时间:2013-09-26 02:30:21

标签: c# html

我正在尝试操作在webbrowser控件中打开的html表,此工具将用于访问带有autologin选项的sharepoint页面。这就是我所拥有的:

HtmlElementCollection htmlcol = 
    wb.Document.GetElementsByTagName("formTextfield277");

for (int i = 0; i < htmlcol.Count; i++)
{
    if (htmlcol[i].Name == "portal_id")
    {
        htmlcol[i].SetAttribute("VALUE", 
                                Properties.Settings.Default.sharepoint_user);
    }
    else if (htmlcol[i].Name == "password")
    {
        htmlcol[i].SetAttribute("VALUE", 
                                Properties.Settings.Default.sharepoint_pw);
    }
}

如果要操作此HTML页面,请使用此C#代码:

<TABLE CELLSPACING="0" CELLPADDING="0" WIDTH="100%" BORDER="0">
    <TR>
        <TD CLASS="txtRedBold10" WIDTH="4">&nbsp;</TD>
        <TD CLASS="txtRedBold10" COLSPAN="2" HEIGHT="30">Please log in</TD>
    </TR>
    <TR>
        <TD CLASS="txtBlackReg10" WIDTH="4">&nbsp;</TD>
        <TD CLASS="txtBlackReg10">Username:</TD>
        <TD><INPUT CLASS="formTextfield277" TYPE="text" NAME="portal_id" VALUE=""  VCARD_NAME="vCard.Email" SIZE="28"></TD>
    </TR>
    <TR>
        <TD CLASS="txtBlackReg10" COLSPAN="3">&nbsp;</TD>
    </TR>
    <TR>
        <TD CLASS="txtBlackReg10" COLSPAN="2">&nbsp;</TD>
        <TD CLASS="txtBlackReg10">Please enter your username or E-Mail Address</TD>
    </TR>
    <TR>
        <TD CLASS="txtBlackReg10" COLSPAN="3">&nbsp;</TD>
    </TR>
    <TR>
        <TD CLASS="txtBlackReg10" WIDTH="4">&nbsp;</TD>
        <TD CLASS="txtBlackReg10">Password:</TD>
        <TD><INPUT CLASS="formTextfield277" TYPE="password" NAME="password" SIZE="28" AUTOCOMPLETE="off"></TD>
    </TR>
    <TR>
        <TD CLASS="txtBlackReg10" COLSPAN="3">&nbsp;</TD>
    </TR>
    <TR>
        <TD CLASS="txtBlackReg10" COLSPAN="2">&nbsp;</TD>
        <TD CLASS="txtBlackReg10">Please enter your network or Intranet password</TD>
    </TR>
    <TR>
        <TD CLASS="txtBlackReg10" COLSPAN="3">&nbsp;</TD>
    </TR>

    <TR>
        <TD CLASS="txtBlackReg10" COLSPAN="2">&nbsp;</TD>
        <TD CLASS="txtBlackReg10">
            <TABLE CELLSPACING="0" CELLPADDING="0" BORDER="0">
                <TR>
                    <TD><INPUT TYPE="image" HEIGHT="24" WIDTH="20" SRC="images/cp_arrow.gif" VALUE="Log In"
                               BORDER="0"></TD>
                    <TD><A CLASS="linkTxtRedBold10" HREF="javascript:signin()"
                           onClick="saveForm()">Login</A>
                    </TD>
                </TR>
            </TABLE>
        </TD>
    </TR>
    <TR>
        <TD CLASS="txtBlackReg10" COLSPAN="3">&nbsp;</TD>
    </TR>
</TABLE>

任何sugestions?

提前致谢!

1 个答案:

答案 0 :(得分:1)

wb.Document.GetElementsByTagName(“input”)not wb.Document.GetElementsByTagName(“formTextfield277”);

 HtmlElementCollection inputHtmlCollection = Document.GetElementsByTagName("input");
 foreach (HtmlElement anInputElement in inputHtmlCollection)
{
                    if (anInputElement.Name.Equals("portal_id"))
                    {
                        anInputElement.SetAttribute("VALUE", Properties.Settings.Default.sharepoint_user);
                    }
                    if (anInputElement.Name.Equals("password"))
                    {
                        anInputElement.SetAttribute("VALUE",  roperties.Settings.Default.sharepoint_pw);
                    }
}
希望这有帮助!