1

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 にはカスタム フォームが含まれておらず、より適切に機能します --

4

4 に答える 4

2

page:change各イベントのドロップダウンを更新する必要がある場合があります。次のようなことを試してください:

$(document).on("page:change", function() {
  // SELECTOR_TO_CUSTOM_DROPDOWNS should select any Zurb custom dropdowns you
  // are using.
  $(SELECTOR_TO_CUSTOM_DROPDOWNS).trigger("change");
});

これは、 Zurb カスタム フォーム JSのドキュメントからのものです。

于 2013-09-26T18:30:13.283 に答える
0

わかりました。ブラウザでアセットの読み込みを繰り返していることがわかりました。これにより、JavaScript エラーが発生します。マニフェストで削除しているようです

//= require turbolinks

問題を解決します。

複数のアセットを変更する問題を解決しました

<%= javascript_include_tag "application" %>

アプリケーション レイアウトの頭に。

ターボリンクのRailscastを見た後、複数のアセットの読み込みに加えて、ターボリンクとファウンデーション 4 に互換性がない可能性があることに気付きまし。しかし、まだ私にとって完璧には機能しません。

また、ナビゲーションバーもターボリンクの影響を受けていることに気付きました。

これはむしろターボリンクの問題であり、特定の基盤ドロップダウンではないと思います. この質問を閉じて、ターボリンクと財団に関する新しい質問を開きます。

于 2013-08-14T13:35:04.240 に答える