更改 select 值 html 形式 ( Awesomium VB.net)

Change select value html form ( Awesomium VB.net)

网络浏览器控件:

  Dim element As HtmlElement =
        WebBrowser1.Document.GetElementsByTagName("select").Cast(Of HtmlElement).First(Function(el) el.GetAttribute("name") = "package_id")
        element.GetElementsByTagName("option").Cast(Of HtmlElement).First(Function(el) el.InnerText = "UNL").SetAttribute("selected", "selected")

如何在 Awesomium 中执行此操作?

试过这个:

WebControl1.ExecuteJavascript("$('#country').value('NL');")

WebControl1.ExecuteJavascript("document.getElementById('country').selectedIndex = NL")

无效。谁能给我一点帮助?

你的最后一个看起来应该可以工作,除了你不能将文本值设置为 selected 索引...它只需要整数,所以你需要知道 NL 的索引到 select 就是这样。如果您不知道索引,则必须循环遍历 select 选项并找到它,或者尝试使用 queryselector。如果您知道 select 选项的值,请使用:

WebControl1.ExecuteJavascript("document.querySelector('option[value='NL']').selected = true;")

请注意,上面的代码搜索的是值,而不是文本...而且 'NL' 部分必须与 select 中的内容完全匹配,包括单与双引号。例如:

<option value="CA">California</option> would need queryselector('option[value="CA"]'])

<option value='CA'>California</option> would need queryselector('option[value='CA']'])