我有一個名爲user_email
的隱藏字段。它看起來像這樣:爲什麼水豚堅持我的隱藏領域是可見的?
<input type="hidden" value="[email protected]" name="user[email]" id="user_email">
出於某種原因,水豚是相信,這是一個明顯的元素:
$ page.find '#user_email'
#<Capybara::Node::Element tag="input" path="/html/body/div[2]/div/section/div/form/div[1]/div[4]/input">
$ page.find '#user_email', visible: :visible
#<Capybara::Node::Element tag="input" path="/html/body/div[2]/div/section/div/form/div[1]/div[4]/input">
$ page.has_css? '#user_email', visible: :visible # => true
$ page.has_css? '#user_email', visible: false # => true
$ page.has_css? '#user_email', visible: true # => true
$ page.has_css? '#user_email', visible: :hidden # => false
$ page.all('#user_email').count # => 1
$ page.all('input[type=hidden]#user_email').count # => 1
設置Capybara.ignore_hidden_elements
沒有效果。我重新啓動了我的機器,以確保我沒有發瘋。我在這裏錯過了什麼,或者隱藏的領域不應該隱藏起來嗎?
你使用什麼驅動程序? –
如果您將'style ='display:none''添加到標籤,該怎麼辦? (雖然不能找到隱藏的輸入字段沒有什麼意義,但如果用CSS隱藏整個表單會怎麼樣?) – froderik