【发布时间】:2018-09-27 04:57:51
【问题描述】:
我想通过 C# 和 Selenium 单击一个复选框。复选框 HTML 如下:
<div class="ad-post-rules" ng-class="{'ad-post-rules-error': submitted && addClassifiedForm.postRulesCheck.$error.required}" an-form-error="" an-form-error-optional-text="İlan verme kurallarını onaylamadınız."><input id="postRulesCheck" class="checkBox sg-checkbox ng-pristine ng-untouched ng-empty ng-invalid ng-invalid-required" type="checkbox" value="1" name="postRulesCheck" ng-model="postRulesCheck" required="" an-form-object-name="İlan Verme Kuralları"><label for="postRulesCheck"></label><span class="rulesOpen" ng-click="adPostRules=true">İlan verme kurallarını</span><label for="postRulesCheck">okudum, kabul ediyorum</label></div>
我的代码如下:
Dim cekbul As IWebElement
System.Threading.Thread.Sleep(1000)
cekbul = driver.FindElement(By.Id("#postRulesCheck"))
cekbul.Click()
【问题讨论】:
-
从 id 中删除“#”。所以说:driver.FindElement(By.Id("postRulesCheck"))
-
元素不可见
-
使用javascript执行器点击
标签: c# selenium selenium-webdriver xpath css-selectors