-1

需要改变这个:

<select name="asdf">
    <option selected>a</option>
    <option>b</option>
    <option>c</option>
</select>

我得到了HtmlElement但无法通过htmlEle.SetAttribute("value", "c");

我想将所选选项从a更改为c

4

3 回答 3

2

拥有元素后,您可以遍历子元素并更新选定的属性:

var ele = webBrowser1.Document.GetElementById("asdf");

if (ele != null)
{
    foreach (HtmlElement child in ele.Children)
    {
        child.SetAttribute("selected", "false");
        if (child.InnerText == "c")
            child.SetAttribute("selected", "true");
    }
}
于 2012-11-10T20:35:14.023 回答
1

假设:htmlEle是选项元素,

C#:请尝试:

  htmlEle.textContent = "a1";

选择显示气体的选项,

 htmlEle.setAttribute("selected", "true");

HTML/JavaScript:

您的意思是要将第一个选项的显示值从 更改ac,然后尝试以下操作:

      htmlEle.innerHTML = "c";

选择显示气体的选项,

     htmlEle.setAttribute("selected", "selected");

如果我有一个ID分配给选择框:

      <select name="asdf" id="selectBox">
         <option selected>a</option>
         <option>b</option>
         <option>c</option>
       </select>

然后

  var selectElem = document.getElementById("selectBox");
  selectElem.childNodes[1].innerHTML = "a1";

将第一个选项的值更改为a1

于 2012-11-10T20:10:33.807 回答
1

这很容易完成

htmlEle.value = "c";

现场演示

于 2012-11-10T20:13:48.393 回答