0

clickイベント ハンドラーで次のコードを使用して、ドロップダウン リストの値を変更しようとしています 。ボタンを押しても実際には何も変わりません。私は何が欠けていますか?これはこれを行う正しい方法ですか?

HtmlDocument document = webBrowser1.Document;
HtmlElement salutation = document.GetElementById("status");
salutation.SetAttribute("value", "Mr");

ここにhtmlがあります

<select id="status">
<option selected="selected" value="">Select</option>
<option value="Mr">Mr.</option>
<option value="Mrs">Mrs.</option>
</select>
4

2 に答える 2

1

これを試すことができます(コードに基づいて)

      HtmlDocument document = webBrowser1.Document;
        HtmlElement salutation = document.GetElementById("status");

        var option = salutation.Children.Cast<HtmlElement>().First(x => x.GetAttribute("value").Equals("Mr"));
        option.SetAttribute("selected", "selected");
于 2013-02-27T02:47:40.340 に答える
0

<select>タグを選択していますか?もしそうなら、それを使用しないでください。次のように を選択し<option>ます。

<select>
  <option value="volvo">Volvo</option>
  <option value="saab" selected="selected">Saab</option>
  <option value="vw">VW</option>
  <option value="audi">Audi</option>
</select>

実際の動作を確認するには: このリンクを参照してください

Scartag のコードを使用すると、次のようになります。

HtmlElement salutation = document.GetElementById("status");

var option = salutation.Children.Cast<HtmlElement>().
             Where(x => x.GetAttribute("selected").Equals("selected")).First();

if (option != null) option.SetAttribute("value","Mr,");
于 2013-02-27T02:51:13.723 に答える