如何获得水豚的隐藏元素值?

NMK*_*MKP 9 ruby capybara

我需要获取隐藏元素的值.

我尝试了以下代码:

page.find(:xpath, "//span[@id='sample']").text
Run Code Online (Sandbox Code Playgroud)

它返回零.

And*_*lov 23

从水豚2.1你可以传递:alltext和使用find('#sample').text(:all),无论驱动程序.

你也可以使用:text匹配器的选项(它们将在内部传递:alltext如果:visiblefalse):

page.should have_css('#sample', visible: false, text: 'expected text')
Run Code Online (Sandbox Code Playgroud)

在较旧的Capybara 2.0.x text中没有这样的选项并仅返回可见文本.

要返回可见和不可见文本,您可以使用:

  • 硒:
page.evaluate_script("document.getElementById('sample').textContent")
Run Code Online (Sandbox Code Playgroud)
  • rack_test:
find('#sample').native.text
Run Code Online (Sandbox Code Playgroud)


Nes*_*ric 20

您可以简单地找到隐藏的元素并获得它的价值.

find('#sample', visible: false).value
Run Code Online (Sandbox Code Playgroud)

很简单 ;)