私はC#でセレンを学んでいますが、私はリストの下のリンクをクリックしているが、常にエラーを表示しています "リンクテキスト= 、以下のようにコード:このリンク要素はどのように入手できますか?常に表示 "リンクテキストで要素を見つけることができません=="
<div id="ctl00_subNavMain_upSubMenu">
<ul id="ctl00_subNavMain_subMenu">
<li class="btnHome selected">
<a href="javascript:__doPostBack('ctl00$subNavMain$subMenu','0')">Home</a>
</li>
<li class="btnNew">
<a href="javascript:__doPostBack('ctl00$subNavMain$subMenu','1')">New Observation</a>
</li>
<li class="btnTestPlatform">
<a href="javascript:__doPostBack('ctl00$subNavMain$subMenu','2')">Test Platforms</a>
</li>
<li class="btnSearch">
<a href="javascript:__doPostBack('ctl00$subNavMain$subMenu','3')">Search</a>
</li>
<li class="btnOTS">
<a href="javascript:__doPostBack('ctl00$subNavMain$subMenu','4')">Remedy OTS</a>
</li>
<li class="btnBug">
<a href="javascript:__doPostBack('ctl00$subNavMain$subMenu','5')">Bugzilla</a>
</li>
</ul>
</div>
は、私は、これは試してみました:
ReadOnlyCollection<IWebElement> links = driver.FindElements(By.XPath("//*[contains(text(),'Search')]"));
MessageBox.Show(links.Count.ToString());
foreach (IWebElement link in links)
{
if(link.TagName=="a")
{
//MessageBox.Show(link.Displayed.ToString());
link.Click();
}
}
が、それはエラーを示し、「この要素をクリックすることができません」と私は「link.Displayed」の使用を試みたが、すべてがあります私はそれを解決することができます、それは私にとって大きな問題です、ありがとう!
私はこれを試しました: "MessageBox.Show(link.Enabled.ToString());"すべては "true"を返す
ソリューション: "javascriptexecuter js =(javascriptexecuter)driver; js.executescript(" arguments [0]。click() "、link);" ありがとうございました。
ありがとう、それは、2つの要素を見つけて、link.Click()を行うが、 "要素をクリックすることはできません"、私は "link.Displayed"を使用して、すべての偽を表示する方法を知っているそれ?感謝! –
以下を使用してください:1.link.sendkeys( "\ n")。 2.次のようにjavascriptを使用します。javascriptexecuter js =(javascriptexecuter)driver; js.executescript( "arguments [0]。click()"、リンク); 3.アクションa =新しいアクション(ドライバ)。 –
ありがとう、私はこれらの3つの方法を試してみました、2番目の作品、他のポップアップ同じerror.thanks。 –