2016-09-30 7 views
0

WebBrowserコントロール:Awesomiumでこれを行うにはどのように変更選択値のHTMLフォーム(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") 

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

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

は動作しません:

はこれをしようとしました。誰も私にここで少し助けを与えることができますか?

答えて

1

あなたの最後の1つは、選択したインデックスにテキスト値を設定することができないことを除いて、動作するはずです...それは整数をとるため、NLのインデックスを知る必要があります。インデックスがわからない場合は、選択オプションをループして検索するか、queryselectorを使用してみる必要があります。上記のコードは数値ではなく、テキストを検索して...そしてまた「NL」の部分は何に正確に一致しなければならないことを

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

注:あなたが選択オプションの値がわかっている場合は、これを使用単一引用符と二重引用符を含む選択項目では、たとえば、次のように

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

<option value='CA'>California</option> would need queryselector('option[value='CA']']) 
関連する問題