如何用css点击capybara中的第二个元素

时间:2018-03-07 00:06:03

标签: rspec capybara

我在表格中有一组以下代码:

<i class="fa fa-pen"></i>

我正在使用水豚,我想点击第二个元素。 我尝试使用:

page.all(:xpath, "//i[@class='fa fa-pen']")[1].trigger('click') -->resulted in clicking all elements

page.all(:xpath, "//i[@class='fa fa-pen']")[1].click -->resulted in ClickFailed error.

我想知道无论如何我都可以点击第二个元素而不使用'within'。

以下是HTML

<div>
    <table>
        <thead></thead>
        <tbody>
            <tr>
                <td></td>
                <td></td>
                <td></td>
                <td></td>
                <td></td>
                <td></td>
                <td></td>
                <td>
                    <a>
                        <i class="fa fa-pen"></i>
                    </a>
                </td>
            </tr>
            <tr>
                <td></td>
                <td></td>
                <td></td>
                <td></td>
                <td></td>
                <td></td>
                <td></td>
                <td>
                    <a>
                        <i class="fa fa-pen"></i>
                    </a>
                </td>
            </tr>
        </tbody>
    </table>
<table>
</table>
</div>

1 个答案:

答案 0 :(得分:0)

尝试find(:xpath, ”//i[@class=’fa fa-pen’][2]”).click之类的内容 看看这对你有用,类似的解决方案对我有用。