我想使用Codeception中的executeJS来点击我正在使用xpath定位器的元素。我知道将它与document.getElementById
一起使用时非常简单。但我尝试使用xpath,我无法使它工作。令我头疼的是:
$this->executeJS('$(\'(//*[@id="openOrders-table"]/tbody/tr[contains(., "Open")]//button[@type="button"])[1]\').click();');
它给出了Cannot read property 'click' of null
如果我在DOM中进行搜索,它会找到该元素,如果我在没有JS的情况下使用它,一切都会好的。
我想成为JS的原因是因为来自JS的点击会自动滚动到元素并点击它。来自Codeception的scrollTo
对我没有多大帮助。元素不是一直在同一个地方。感谢时间!