2016-03-05 90 views
0

HTML部分:无法与XPath硒获得元素的webdriver

<li tabindex="-1" role="option" unselectable="on" class="k-item k-state-focused" data-index="0" id="6609432f-2fd2-49c1-95df-6a330acecca0">admin</li> 

这里的Xpath我正努力:

driver.findelement(by.xpath("//li[text()=//li[. = 'admin']")); 

但是,得到的异常:

无效的选择:无法找到具有xpath表达式的元素// li [text()= // li [。 ='admin']由于以下错误:

SyntaxError:未能对'Document'执行'evaluate':字符串'// li [text()= // li [。 ='admin']'不是有效的XPath表达式。

精确看看UI和HTML代码:

enter image description here

那场汽车complete.ID正在改变的动力,元素的,所以我不能使用的ID在这里找到的元素。

回答

3

你的XPath表达式语法上不正确的,有一个额外的[,解决它:

//li[text()='admin'] 

或者,您也可以使用.指当前节点的文本:

//li[. = 'admin'] 
+0

感谢您的回应,我只是尝试了您给出的解决方案,并得到了一些更接近的错误,我更新了问题,请您看看。 –

+0

@HelpingHands yup,但你仍然在尝试一个无效表达式// // li [text()= // li [。 ='admin']'。试试'// li [。 ='admin']'。谢谢。 – alecxe

+0

优秀的解决方案。有用:) –