2013-04-06 144 views
0

我正在使用simple_form與twitter引導在Rails上。simple_form錯誤消息不會消失

除非在Form-inline類中顯示實時驗證,否則一切都很好。我對錶單代碼是:

<%= simple_form_for @message, 
        url: mailing_list_path, 
        html: { class: "form-inline" }, 
        method: :post, 
        validate: true do |f| %> 

    <%= f.input_field :email_address, label: false %> 
    <%= f.submit "Submit" %> 
<% end %> 

這顯示錯誤信息正確(如「無效」),但如果我點擊關閉輸入,然後再次打開,它增加了另一個消息(例如,它會說「無效無效」)。例如,兩個連續的無效項,然後在空白項會給:

errors are not removed

有沒有什麼辦法讓simple_form添加一個新的人之前刪除現有的錯誤消息?

+0

任何原因,你在使用'f.input_field',而不是'f.input'? – depa 2013-04-06 17:20:10

+0

@depa是的,f.input將它包裝在一個div中,這會導致它不能顯示內聯 – tyler 2013-04-06 18:11:00

回答

0

編輯:

我該使用一些貧民窟的js,但還是想知道,如果我上面提到的功能是內置的DIV仍然存在,他們只是隱藏在這一切的,而不是解決一起展示。將是巨大的,讓他們實際表單驗證刪除...

$('input.email-address-input').on 'keyup',() -> 
    $(this).parent('form').siblings('.help-inline').hide()