首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Select元素的Selenium RC CSS定位器

Select元素的Selenium RC CSS定位器
EN

Stack Overflow用户
提问于 2012-05-16 04:37:29
回答 1查看 803关注 0票数 0

您是否知道如何从定义如下的元素中选择选项:

代码语言:javascript
复制
<select onchange="onIsIsNot('COND_MT_USER_MOB_ACTIVE', this)">
<option selected="" value="512">Cellular</option>
<option value="256">WLAN</option>
<option value="768">Cellular or WLAN</option>
</select>

我使用的是Python,并尝试了以下内容的变体:

代码语言:javascript
复制
select = "COND_MT_USER_MOB_ACTIVE"
value = "Cellular"
sel.select("css=select[onchange='onIsIsNot(\'%s\', this)']"%select, "label=%s"%value)

对于onchange属性,我认为我没有将引号中的引号放在引号中。

EN

回答 1

Stack Overflow用户

发布于 2012-05-17 23:59:22

因此,如果您可以添加一个id属性,这应该很容易:

代码语言:javascript
复制
sel.select("id=%s"%id_val, "label=%s"%value)

也就是说,如果您不能做到这一点,请考虑在以下位置进行了哪些转义:

代码语言:javascript
复制
In [1]: z = "\'"

In [2]: z
Out[2]: "'"

所以在下面这行代码中:

代码语言:javascript
复制
sel.select("css=select[onchange='onIsIsNot(\'%s\', this)']"%select.......

这就是selenium选择器所看到的:

代码语言:javascript
复制
"css=select[onchange='onIsIsNot('COND_MT_USER_MOB_ACTIVE', this)']"

注意,对于CSS选择器,单引号不再被转义。我怀疑这就是您需要的,尽管我还没有对其进行测试(查看字符串开头的r,查找“原始字符串”):

代码语言:javascript
复制
sel.select(r"css=select[onchange='onIsIsNot(\'%s\', this)']"%select.......
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/10608525

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档