WebKitBrowserコントロールがあり、DocumentTextをそのように設定するとします...
wkb.DocumentText = @"
<!DOCTYPE HTML PUBLIC '-//W3C//DTD HTML 4.01//EN' 'http://www.w3.org/TR/html4/strict.dtd'>
<html>
<head></head>
<body>
<form>
<input type='text' id='test' name='smith'><br>
</form>
</body>
</html>
";
次に、C#を介してその入力フィールドのユーザー入力をフェッチする場合、適切な方法は何ですか?
HTMLでvalue属性を事前定義すると、次のようになります...
<input type='text' id='test' name='smith' value='freedom'>
次に、MessageBox.Show(wkb.Document.GetElementById("test").getAttribute("value"));
「自由」を正確に表示します。ただし、値が定義されていない場合、結果は常に空白になります(空ではなく、nullであると想定しています)。
これは私には理にかなっていますが、事前定義された値ではなく、ユーザー入力をフェッチします。ドキュメント全体を文字列に保存して解析できると思いますが、 element.valueルートを使用した標準のIEブラウザコントロールでははるかに簡単でした。私のおいしいオプションは何ですか?