0

<%= f.submit %>私は、他の「ボタン」と同じように表示されるように、あまり運がなくても試してみました。のクラスの変更に関するこの有益な投稿を見つけましf.submitたが、ブラウザーでその要素を調べると、inputオプション パラメーターとして追加した追加のクラスに関係なく、 のクラスを取得したため、その外観が制限されていることに気付きました。

基本的に、他の各ボタンには次の形式があります。

<div class="sort-nav">
  <ul>
    <li><h4><%= link_to "Some stuff", some_link_path %></h4></li>
  </ul>
</div>

inputそして、これらのスタイルをすべて 1 つのクラスにコンパクトに収めて、に含まれるクラスのスタイルをオーバーライドする方法があるかどうか疑問に思っていましたf.submit。ありがとう。


教育のために、このボタンは、関係を作成または破棄するために使用される「フォロー」/「フォロー解除」ボタンになり、最初_follow_formに次のコードでパーシャルをレンダリングする予定です。

  <% if current_user.following?(@course) %>
    <%= render 'unfollow' %>
  <% else %>
    <%= render 'follow' %>
  <% end %>

個々の_followパーシャルはそれぞれ次のようになります。

<%= form_for(current_user.relationships.build(followed_id: @course.id)) do |f| %>
  <%= f.hidden_field :followed_id %>
  <%= f.submit "Follow course" %>
<% end %>
4

1 に答える 1

1

少しハックですが、いつでもjsを使用してフォームを送信できるため、を使用する代わりに、次のようにf.submit変更してください。

<div class="sort-nav">
  <ul>
    <li>
      <h4><%= link_to_function "Some stuff", '$(this).closest("form").submit()' %></h4
    </li>
  </ul>
</div>
于 2013-02-27T03:22:53.327 に答える