Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/logging/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby 如何单击奇怪的选择列表元素?_Ruby_Selenium Webdriver_Watir Webdriver - Fatal编程技术网

Ruby 如何单击奇怪的选择列表元素?

Ruby 如何单击奇怪的选择列表元素?,ruby,selenium-webdriver,watir-webdriver,Ruby,Selenium Webdriver,Watir Webdriver,在未识别的下拉菜单中选择选项时出现问题。当我单击下拉箭头时,下拉列表的元素会出现,但我不能单击它们,因为我不知道它们的id或其他我可以使用的属性。 这是代码。我无法使用以下选项从选择列表中选择: on_page(RegistrationPage).id_of_select_list_with_options = "8" 或 或 错误是:元素当前不可见,因此可能无法与之交互(Selenium::WebDriver::error::ElementNotVisibleError) 当我点击组合按钮时

在未识别的下拉菜单中选择选项时出现问题。当我单击下拉箭头时,下拉列表的元素会出现,但我不能单击它们,因为我不知道它们的id或其他我可以使用的属性。 这是代码。我无法使用以下选项从选择列表中选择:

on_page(RegistrationPage).id_of_select_list_with_options = "8"

错误是:元素当前不可见,因此可能无法与之交互(Selenium::WebDriver::error::ElementNotVisibleError)

当我点击组合按钮时,会出现元素下拉列表,但我无法选择其中的元素,因为它们在选择后会出现在组合选择的div中。(与combo selected div中的“Jour”文本类似,默认情况下它在那里) 以下是html:

    <div class="form-item" id="edit-field-profile-bday-0-value-day-wrapper">
 <label for="edit-field-profile-bday-0-value-day">Jour : <span class="form-required" title="Ce champ est obligatoire.">*</span></label>
 <select name="field_profile_bday[0][value][day]" class="form-select required  date-day" id="edit-field-profile-bday-0-value-day" ><option value="" selected="selected">Jour</option><option value="1">1</option><option value="2">2</option><option value="3">3</option><option value="4">4</option><option value="5">5</option><option value="6">6</option><option value="7">7</option><option value="8">8</option><option value="9">9</option><option value="10">10</option><option value="11">11</option><option value="12">12</option><option value="13">13</option><option value="14">14</option><option value="15">15</option><option value="16">16</option><option value="17">17</option><option value="18">18</option><option value="19">19</option><option value="20">20</option><option value="21">21</option><option value="22">22</option><option value="23">23</option><option value="24">24</option><option value="25">25</option><option value="26">26</option><option value="27">27</option><option value="28">28</option><option value="29">29</option><option value="30">30</option><option value="31">31</option></select>
</div>
<div class="combo-wrapper" style="display: inline-block; width: 61px; height: 24px; " tabindex="0"><div class="combo-button" style="width: 24px; height: 24px; display: inline-block; ">+</div><div class="combo-selected" style="width: 37px; height: 24px; display: inline-block; ">Jour</div></div>
<div class="combo-button" style="width: 24px; height: 24px; display: inline-block; ">+</div>
<div class="combo-selected" style="width: 37px; height: 24px; display: inline-block; ">Jour</div>
"Jour"
</div>

月:*
Jour12345678910111213141516171819202122232425262728293031
+焦耳
+
熟练工人
“日”
而不是。选择(“8”)。尝试以下方法:

@browser.select_list(:name => "field_profile_bday[0][value][day]").option(:value, '8').select

我认为您需要指向option元素,然后使用固有的select方法。希望这能奏效。祝你好运

    <div class="form-item" id="edit-field-profile-bday-0-value-day-wrapper">
 <label for="edit-field-profile-bday-0-value-day">Jour : <span class="form-required" title="Ce champ est obligatoire.">*</span></label>
 <select name="field_profile_bday[0][value][day]" class="form-select required  date-day" id="edit-field-profile-bday-0-value-day" ><option value="" selected="selected">Jour</option><option value="1">1</option><option value="2">2</option><option value="3">3</option><option value="4">4</option><option value="5">5</option><option value="6">6</option><option value="7">7</option><option value="8">8</option><option value="9">9</option><option value="10">10</option><option value="11">11</option><option value="12">12</option><option value="13">13</option><option value="14">14</option><option value="15">15</option><option value="16">16</option><option value="17">17</option><option value="18">18</option><option value="19">19</option><option value="20">20</option><option value="21">21</option><option value="22">22</option><option value="23">23</option><option value="24">24</option><option value="25">25</option><option value="26">26</option><option value="27">27</option><option value="28">28</option><option value="29">29</option><option value="30">30</option><option value="31">31</option></select>
</div>
<div class="combo-wrapper" style="display: inline-block; width: 61px; height: 24px; " tabindex="0"><div class="combo-button" style="width: 24px; height: 24px; display: inline-block; ">+</div><div class="combo-selected" style="width: 37px; height: 24px; display: inline-block; ">Jour</div></div>
<div class="combo-button" style="width: 24px; height: 24px; display: inline-block; ">+</div>
<div class="combo-selected" style="width: 37px; height: 24px; display: inline-block; ">Jour</div>
"Jour"
</div>
@browser.select_list(:name => "field_profile_bday[0][value][day]").option(:value, '8').select
@browser.select_list(:name => "field_profile_bday[0][value][day]").options[7].select