我想使用selenium webdriver代码单击下拉按钮。 HTML如下:
<div class="btn-group bootstrap-select show-tick ua-bo-select" style="width: 222px;">
<button class="btn dropdown-toggle bs-placeholder btn-default" role="button" data-toggle="dropdown" type="button" data-id="invContactList" title="" data-original-title="Nothing selected">
准确的代码是什么?
请检查我的应用程序正在使用的下拉按钮
答案 0 :(得分:0)
这个HTML中没有'a'Tag。因此使用Select将无效。而是这样做:
class DataViewSet(viewsets.ModelViewSet):
def get_serializer_class(self):
if self.action in ['list',]:
return GetSerializer
elif self.action in ['update','partial_update',]:
return PutPostSerializer
return DefaultSerializer
然后监视下拉值并给出另一个xpath或ID。它会工作。
我认为您提供的xpath是错误的。请尝试以上或以下:
driver.findElement(By.xpath(".//button[@data-toggle='dropdown']")).Click();
答案 1 :(得分:0)
使用xpath
定位器尝试以下任何一种代码。
说明:使用data-id
标记的<button>
属性。
driver.findElement(By.xpath(".//button[@data-id='invContactList']")).Click();
OR
说明:使用data-original-title
标记的<button>
属性。
driver.findElement(By.xpath("//button[@data-original-title='Nothing selected']")).Click();
OR
说明:使用data-toggle
标记的<button>
属性。
driver.findElement(By.xpath("//button[@data-toggle='dropdown']")).Click();