51Testing软件测试论坛

标题: 非select下拉框,定位成功,但是点击后没有反应 [打印本页]

作者: 芒果go    时间: 2016-9-23 09:36
标题: 非select下拉框,定位成功,但是点击后没有反应
<div class="auth-select bg-white clearfix re">
<input id="borrowPeriod" value="" style="display:none;" autocomplete="off" name="borrowPeriod"/>
<a class="b9 flip" onclick="toggleDropdown('dropdown');" href="javascript:void(0);">
<div id="dropdown" class="auth-select-drop-height bg-white ab panel" style="display: none;" onblur="this.style.display='none';" tabindex="1">
<ul>
<li>
<a onclick="borrowPeriodChange('borrowPeriod','borrowPeriodText','7','7天','dropdown')">7天</a>
</li>
<li>
<a onclick="borrowPeriodChange('borrowPeriod','borrowPeriodText','14','14天','dropdown')">14天</a>
</li>
<li>
<a onclick="borrowPeriodChange('borrowPeriod','borrowPeriodText','21','21天','dropdown')">21天</a>
</li>
<li>
<a onclick="borrowPeriodChange('borrowPeriod','borrowPeriodText','30','30天','dropdown')">30天</a>
</li>
</ul>
</div>
</div>
<div class="m20b fl">
<div class="oh p20l lh30 b9">
</div>
这是页面代码,下面的是我的定位:
driver.find_element_by_id("borrowPeriodText").click() #点击,下拉框可见
time.sleep(1)
drop=driver.find_element_by_id("dropdown")
drop.find_element_by_link_text("7天").click()  #点击后无反应
作者: 梦想家    时间: 2016-9-23 14:47
http://www.cnblogs.com/fnng/p/5361443.html
作者: 芒果go    时间: 2016-9-23 15:41
梦想家 发表于 2016-9-23 14:47
http://www.cnblogs.com/fnng/p/5361443.html

不是select类型的选项,是直接定义出来的,明明可以成功定位,也执行了点击的操作,只是没有把选项的值传入到那个框里显示出来。
作者: alchaochao    时间: 2016-9-23 18:33
把最后一句的drop换成driver
作者: alchaochao    时间: 2016-9-23 18:35
drop.find_element_by_link_text("7天").click()  #点击后无反应
find_element_by_link_text函数是WebDriver 来驱动的,不是drop的
试试driver.find_element_by_link_text("7天").click()
作者: 芒果go    时间: 2016-9-30 17:06
alchaochao 发表于 2016-9-23 18:33
把最后一句的drop换成driver

最后一句的drop是一个变量,拿的前面的driver.find_element........不是写错了,我已经找到解决方法了,我遇到的是有js时间的下拉框,可以直接调用js方法。driver.execute_script("js方法") 这样就可以了




欢迎光临 51Testing软件测试论坛 (http://bbs.51testing.com/) Powered by Discuz! X3.2