使用 Capybara w/ Selenium,我将如何单击表格行?

发布于 2024-11-24 21:12:37 字数 137 浏览 1 评论 0原文

只是想知道是否有可以与任何元素一起使用的 click_link / click_button 的替代方案,因为我的一些可点击元素不是标准的 html 可点击元素(例如 tr 元素),但它们仍然包含 href 属性。

启用 JavaScript。

Would simply like to know if there's an alternative to click_link / click_button that can be used with any element as some of my clickable elements are not standard html clickables such as tr elements, but they still contain href attributes.

Javascript enabled.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(4

最偏执的依靠 2024-12-01 21:12:38

我在 html 月视图中遇到了同样的情况,我必须选择一个月中的某一天。我尽可能保持简单,这只是做到这一点的一种方法。

# Choose July 22 (at this point in time)
assert page.has_css? '#calendar'
within '#calendar' do
  find('td', :text => '22').click 
end

I had the same situation with a html month view, I had to choose a day of month. I kept it as simple as I could and this is only one way of doing this.

# Choose July 22 (at this point in time)
assert page.has_css? '#calendar'
within '#calendar' do
  find('td', :text => '22').click 
end
萌化 2024-12-01 21:12:38

你用黄瓜吗?不确定这对您是否有任何用处,但这里有一个黄瓜步骤定义,用于单击带有硒的任何内容:

Then /^I click "(.+)"$/ do |locator|
  selenium.click locator
end

Are you using cucumber? Not sure if it's any use to you, but here's a cucumber step definition for clicking anything with selenium:

Then /^I click "(.+)"$/ do |locator|
  selenium.click locator
end
天冷不及心凉 2024-12-01 21:12:38

我过去曾尝试过 javascript 解决方案,它的工作原理是按钮确实被单击,但黄瓜无法将其识别为已完成的步骤。

I have tried the javascript solution in past, it works in the sense that the button do gets clicked, but cucumber fails to recognise it as a completed step.

舞袖。长 2024-12-01 21:12:37

然后使用 JavaScript:

page.execute_script("$('whatever_you_want').click()");

Use Javascript then:

page.execute_script("$('whatever_you_want').click()");
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文