【问题标题】:How do I click a link in a row that meets specific conditions?如何点击一行中满足特定条件的链接?
【发布时间】:2013-02-22 15:22:48
【问题描述】:

我希望单击一个链接,该链接位于第一个表格行中,其中包含一些文本。

我尝试了以下

 within(all('tr').select {|elt| elt.text == "desired text" }.first) do
    all('a').first.click
 end

不幸的是,它不满足真实条件,并且代码从未执行过。我可能需要“点赞”命令或部分文本搜索。

我该怎么做呢?

【问题讨论】:

  • 你能展示一个你希望它匹配的 html 代码示例吗?

标签: html ruby regex cucumber capybara


【解决方案1】:

你可以给你的链接一个独特的 css 类,例如"foobar" 并使用以下命令直接点击:

page.find(:css, ".foobar").click

或者尝试这个搜索带有文本“foobar”的行,然后单击该行中带有文本“所需文本”的链接:

page.find(:xpath, "//tr[contains(.,'foobar')]/td/a", :text => 'desired text').click

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-07-26
    • 1970-01-01
    • 2021-04-29
    • 2022-06-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多