2014-05-19 77 views
0

好了,所以我做了我的研究是肯定的,但无法找到一个答案,我的问题。使用硒的webdriver以及网页上有一个项目列表下面是一个简单的HTML如何选择与多个CSS元素属性中使用硒的webdriver

<div class="color-picker-slider" style="width: 180px;" active_state="black"> 
    <div class="store_color_picker black-selector" style="width:20px;" color_name="black"   product_id="132" base_color="black"></div> 
    <div class="store_color_picker slate-selector" style="width:20px;" color_name="slate" product_id="133" base_color="slate"></div> 
    <div class="store_color_picker violet-selector" style="width:20px;" color_name="violet" product_id="157" base_color="violet"></div> 
    <div class="store_color_picker flexlime-selector" style="width:20px;" color_name="lime" product_id="155" base_color="lime"></div> 
    <div class="store_color_picker pink-selector" style="width:20px;" color_name="pink" product_id="156" base_color="pink"></div> 
    <div class="store_color_picker teal-selector" style="width:20px;" color_name="teal" product_id="158" base_color="teal"></div> 
    <div class="store_color_picker tangerine-selector" style="width:20px;" color_name="tangerine" product_id="159" base_color="tangerine"></div> 
    <div class="store_color_picker navy-selector" style="width:20px;" color_name="navy" product_id="160" base_color="navy"></div> 
    <div class="store_color_picker red-selector" style="width:20px;" color_name="red" product_id="161" base_color="red"></div> 
    </div> 

所以我创建了一个包含所有的产品,它的相应的索引位置数的枚举。这伟大工程,但唯一的问题是,如果指标的变化,比方说加入新的项目不添加到最后一个索引,然后我不得不去改变每一个指标,因此不是很有效。我看到的唯一静态属性是product_id,这不太可能改变。如果添加了新的product_id,我可以将其添加到枚举中,而无需更改任何索引等。然后

我的问题就变成了我怎么可以点击基础上的product_id的元素?我知道如何获取属性,但当然返回一个字符串,但不知何故,我想点击基于product_id的项目。任何帮助将不胜感激!顺便说一下,我使用CSS来查找元素。这是不是任何下拉列表中的一部分

+0

哪里是HTML? – nilesh

+0

我想添加它 - 我一个相当新的张贴问题...我复制了HTML和尝试后,现在 – user2474976

+0

我们走吧 - 增加了:) – user2474976

回答

0

您可以根据其属性编写CSS选择器:

.store_color_picker[product_id='133'] 

基本上,格式为:

selector[attribute='attribute_value'] 

因此,你也可以做:

.store_color_picker[color_name='black'] 

如果您想按颜色名称进行选择。

+0

谢谢内森 - – user2474976

相关问题