-1

ページがあり、入力領域を読み取り、C# で GetAttribute と SetAttribute によって値を変更するための本体を取得したい。これはやっても問題ありませんが、

次の方法で本体を呼び出すと、何も返されません (空の文字列を意味します)。

webBrowser1.Document.Body.InnerText 

また、

webBrowser1.Document.Body.InnerHtml

そのため、入力フィールドにアクセスできません。webbrowser コンポーネントに Web ページが表示されますが、InnerText も InnerHtml も返されません。これは、ローカルで実行されている、保存された銀行のウェブページです。

では、SetAttribute、GetAttribute、または InvokeMember を実行するために、ボディをどのように読み取ることができますか?

4

1 に答える 1

-2

テキストを取得または設定するには、入力要素を取得する必要があります。

HtmlElementCollection elements = currentBrowser.Document.GetElementsByTagName("INPUT");
     foreach (HtmlElement element in elements)
        {
           //to get the text use :  string value = element.GetAttribute("value");
           //to set the text use :  elemet.InnerText = "something";

        }

ただし、上記のコードですべての入力要素を取得することを忘れないでください。特定の要素を検索するには、Web ページのようにその ID または名前を確認できます。たとえば、次のようになります。

 if (element.Name.ToLower().Contains("email"))
         //do work
于 2014-03-01T19:31:46.257 に答える