RailsアプリケーションでZurb Foundation 4でスタイル設定されたカスタムフォームの選択ドロップダウン入力をクリックすると、リストにその要素が表示されないという厄介な問題が発生しました。
最初は単純なフォームの問題だと思っていましたが、f.collection_select の f.association を変更しました。私のコードは次のようになります。
<h2><%= I18n.t(".sign_up") %></h2>
<%= simple_form_for(resource, :html => {:class => "custom"}, :as => resource_name, :url => registration_path(resource_name)) do |f| %>
<%= f.error_notification %>
<%= devise_error_messages! %>
<%= f.input :rut %>
<%= f.input :name %>
<%= f.input :email %>
<div>
<%= f.label :supplier_type_id %>
<%= f.collection_select :supplier_type_id, SupplierType.all, :id, :name %>
</div>
<%= f.input :password %>
<%= f.input :password_confirmation %>
<%= f.error :base %>
<%= f.submit I18n.t(".sign_up"), :class => "button" %>
<% end %>
<%= render "devise/shared/links" %>
最も奇妙なことは、ページを更新するとアイテムが表示されることがありますが、アプリの他のビューからナビゲートするページに移動すると機能しないことです。フォームのヒントを使用するときにもこれに気付きました(つまり、同じフォームの異なる入力に2つのヒントがある場合、1つだけが表示されますが、各メッセージがそれぞれのメッセージに表示される必要がある場合、同じ1つのメッセージが両方の入力に表示されます入力。ページをリロードすると、1 つのヒントが表示される場合と、別のヒントが表示される場合があります)
スタイルは良さそうなので、もしかしたら基盤のjavascriptの問題ではないかと思います。
私が気付いたもう 1 つのことは、ページをロードすると、カスタム フォームを使用しているときにスタイリングが一種の「点滅」を行うことです。ファンデーションがスタイリングをロードするのに時間がかかるように見えるこの点滅は、独自のカスタムフォームドキュメンテーションサイトでもこれに気づきました。これは、フォームが JavaScript イベントなどでスタイル設定されていることを示している可能性があるため、JavaScript が適切に機能していることを意味している可能性があります。
また、チェックボックスにも同様の問題があり、ページをリロードしたときにのみチェックできます。これは、この問題と何らかの関係がある可能性があります。
私は非常に迷っています。いくつかのヘルプは非常に便利になります。ありがとう!
-- 編集: Foundation 5 にはカスタム フォームが含まれておらず、より適切に機能します --