にドロップダウンボックスで現在選択されているオプションを取得します。今、セレンで私はこの1つに類似のドロップダウン持っているセレン
<select id="PlaceOfBirth">
<option value="">-- Please select --</option>
<option value="1">Somewhere</option>
<option value="2">Somewhere else</option>
<option value="3">somewhere else again</option>
</select>
を、私は、ページのロードに、-- Please select --
がデフォルトで選択される、ことを確認します。
グーグル・スルー、selecting by xpath and [selected="selected"]は有望でしたが、私のoptions
のどれもが始まる属性を選択していないため、使用できません。
だから、私はちょうどそのような最初の要素を選択することができ、代わりに、考えた:
driver.FindElement(By.XPath("//select[@id='PlaceOfBirth']/*[1]"));
//the actual xpath being //select[@id='PlaceOfBirth']/*[1]
これがうまく最初のオプションを返すんが、それは必ずしも選択された一つではありません。現在選択されているオプションが欲しいものであることを確認するにはどうすればいいですか (value="", text="-- Please select --")
してください。
ありがとうございました。
PS:私は
PPS webdriverをセレンを使用しています:私はselectLocator
のような様々な答えに遭遇してきた、など彼らは、PHP/Javaのですか、私は私の名前空間でそれらを見つけることができないのどちらかでも...
WebDriverで 'SelectElement'を作成する方法については、[この回答](http://stackoverflow.com/a/5296364)を参照してください。一度それがあれば、 'SelectedOption'プロパティはページロード時に選択されているものを確認することができます。 – Bryan
@ブライアン、ありがとう!私が気付いていなかったいくつかのものに私を導いてくれました。 – LocustHorde