页面上有一个字段,我试图通过在xpath上调用set来分配一些文本:
find(:xpath, "//div[@id='quantity_log_div']//input[@type='text'][contains(@class, 'ac_input no_submit')]").set(cost_code)
这是使用该类的有效xpath。
<td>
<select data-url="/274848/project/daily_log/cost_codes_for_typeahead" class=" select_autocomplete" name="quantity_log[cost_code_id]" id="quantity_log_cost_code_id" style="display_none">
<option value=""></option>
<option value=""></option>
<option class="cc_division" value="99318960">38794 - Litte Dipper</option>
<option class="cc_division" value="99318956">77837 - Aries</option>
<option class="cc_division" value="99318959">89450 - Cancer</option></select>
<input type="text" autocomplete="off" size="30" class ="ac_input no_submit">
</td>
检查页面时,单击class ="ac_input no_submit"
选择文本应该出现的右侧单元格,但不设置任何内容。运行此行时也没有错误。你能不能在xpath上使用.set?有没有更好的方法来填补这个领域?
我注意到这个类不在源代码中,如果它影响它。
cost_code
是我在集合中传递的变量,每次都会更改该值。